/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 15:14:16,515 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 15:14:16,516 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 15:14:16,565 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 15:14:16,566 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 15:14:16,567 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 15:14:16,568 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 15:14:16,569 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 15:14:16,576 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 15:14:16,581 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 15:14:16,582 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 15:14:16,585 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 15:14:16,585 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 15:14:16,585 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 15:14:16,586 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 15:14:16,587 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 15:14:16,588 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 15:14:16,588 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 15:14:16,589 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 15:14:16,591 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 15:14:16,592 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 15:14:16,593 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 15:14:16,593 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 15:14:16,594 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 15:14:16,595 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 15:14:16,597 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 15:14:16,597 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 15:14:16,597 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 15:14:16,598 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 15:14:16,598 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 15:14:16,599 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 15:14:16,599 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 15:14:16,600 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 15:14:16,600 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 15:14:16,601 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 15:14:16,602 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 15:14:16,602 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 15:14:16,602 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 15:14:16,603 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 15:14:16,603 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 15:14:16,603 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 15:14:16,604 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 15:14:16,605 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-14 15:14:16,622 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 15:14:16,622 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 15:14:16,622 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-14 15:14:16,623 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-14 15:14:16,623 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-14 15:14:16,623 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-14 15:14:16,624 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-14 15:14:16,624 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-14 15:14:16,624 INFO L138 SettingsManager]: * Use SBE=true [2022-04-14 15:14:16,624 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 15:14:16,625 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 15:14:16,625 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 15:14:16,625 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 15:14:16,625 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 15:14:16,625 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 15:14:16,625 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 15:14:16,625 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 15:14:16,625 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 15:14:16,626 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 15:14:16,626 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 15:14:16,626 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 15:14:16,626 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 15:14:16,626 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 15:14:16,626 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 15:14:16,626 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 15:14:16,627 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 15:14:16,627 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-14 15:14:16,627 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-14 15:14:16,627 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 15:14:16,627 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-14 15:14:16,627 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-04-14 15:14:16,627 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-14 15:14:16,628 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-14 15:14:16,628 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-14 15:14:16,832 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 15:14:16,851 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 15:14:16,853 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 15:14:16,854 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 15:14:16,855 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 15:14:16,856 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound20.c [2022-04-14 15:14:16,906 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/2a2d8ab32/d86ce9ecb50940f98bbf05cf9af485ad/FLAG84b1f78ae [2022-04-14 15:14:17,284 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 15:14:17,286 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound20.c [2022-04-14 15:14:17,293 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/2a2d8ab32/d86ce9ecb50940f98bbf05cf9af485ad/FLAG84b1f78ae [2022-04-14 15:14:17,688 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/2a2d8ab32/d86ce9ecb50940f98bbf05cf9af485ad [2022-04-14 15:14:17,691 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 15:14:17,692 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-14 15:14:17,693 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 15:14:17,693 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 15:14:17,696 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 15:14:17,697 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 03:14:17" (1/1) ... [2022-04-14 15:14:17,698 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7f821a77 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:17, skipping insertion in model container [2022-04-14 15:14:17,698 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 03:14:17" (1/1) ... [2022-04-14 15:14:17,703 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 15:14:17,718 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 15:14:17,859 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound20.c[576,589] [2022-04-14 15:14:17,878 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 15:14:17,886 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 15:14:17,895 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound20.c[576,589] [2022-04-14 15:14:17,904 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 15:14:17,915 INFO L208 MainTranslator]: Completed translation [2022-04-14 15:14:17,915 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:17 WrapperNode [2022-04-14 15:14:17,915 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 15:14:17,916 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 15:14:17,916 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 15:14:17,916 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 15:14:17,926 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:17" (1/1) ... [2022-04-14 15:14:17,926 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:17" (1/1) ... [2022-04-14 15:14:17,932 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:17" (1/1) ... [2022-04-14 15:14:17,932 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:17" (1/1) ... [2022-04-14 15:14:17,950 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:17" (1/1) ... [2022-04-14 15:14:17,957 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:17" (1/1) ... [2022-04-14 15:14:17,962 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:17" (1/1) ... [2022-04-14 15:14:17,964 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 15:14:17,964 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 15:14:17,964 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 15:14:17,965 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 15:14:17,967 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:17" (1/1) ... [2022-04-14 15:14:17,978 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 15:14:17,984 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:17,993 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-14 15:14:18,010 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-14 15:14:18,024 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 15:14:18,024 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 15:14:18,024 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 15:14:18,024 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 15:14:18,024 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 15:14:18,024 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 15:14:18,025 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 15:14:18,025 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 15:14:18,025 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 15:14:18,025 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 15:14:18,025 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 15:14:18,025 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 15:14:18,025 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 15:14:18,025 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 15:14:18,025 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 15:14:18,026 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 15:14:18,026 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 15:14:18,026 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 15:14:18,026 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 15:14:18,026 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 15:14:18,073 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 15:14:18,074 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 15:14:18,256 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 15:14:18,263 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 15:14:18,266 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-14 15:14:18,267 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 03:14:18 BoogieIcfgContainer [2022-04-14 15:14:18,268 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 15:14:18,269 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 15:14:18,269 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 15:14:18,271 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 15:14:18,271 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 03:14:17" (1/3) ... [2022-04-14 15:14:18,272 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@545774cd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 03:14:18, skipping insertion in model container [2022-04-14 15:14:18,272 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 03:14:17" (2/3) ... [2022-04-14 15:14:18,272 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@545774cd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 03:14:18, skipping insertion in model container [2022-04-14 15:14:18,272 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 03:14:18" (3/3) ... [2022-04-14 15:14:18,273 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_unwindbound20.c [2022-04-14 15:14:18,277 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-14 15:14:18,277 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 15:14:18,316 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 15:14:18,322 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-14 15:14:18,322 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 15:14:18,338 INFO L276 IsEmpty]: Start isEmpty. Operand has 38 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 23 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 15:14:18,342 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-14 15:14:18,342 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:18,343 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:18,343 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:18,351 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:18,351 INFO L85 PathProgramCache]: Analyzing trace with hash -1588022502, now seen corresponding path program 1 times [2022-04-14 15:14:18,363 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:18,365 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1986156510] [2022-04-14 15:14:18,365 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:18,366 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:18,453 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:18,548 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 15:14:18,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:18,578 INFO L290 TraceCheckUtils]: 0: Hoare triple {50#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {41#true} is VALID [2022-04-14 15:14:18,578 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-14 15:14:18,578 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-14 15:14:18,579 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 15:14:18,582 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:18,593 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-14 15:14:18,594 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-14 15:14:18,594 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-14 15:14:18,594 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-14 15:14:18,596 INFO L272 TraceCheckUtils]: 0: Hoare triple {41#true} call ULTIMATE.init(); {50#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 15:14:18,596 INFO L290 TraceCheckUtils]: 1: Hoare triple {50#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {41#true} is VALID [2022-04-14 15:14:18,596 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-14 15:14:18,596 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-14 15:14:18,597 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret8 := main(); {41#true} is VALID [2022-04-14 15:14:18,597 INFO L290 TraceCheckUtils]: 5: Hoare triple {41#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {41#true} is VALID [2022-04-14 15:14:18,597 INFO L272 TraceCheckUtils]: 6: Hoare triple {41#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {41#true} is VALID [2022-04-14 15:14:18,597 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-14 15:14:18,598 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-14 15:14:18,598 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-14 15:14:18,599 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-14 15:14:18,599 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#false} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {42#false} is VALID [2022-04-14 15:14:18,600 INFO L290 TraceCheckUtils]: 12: Hoare triple {42#false} assume !true; {42#false} is VALID [2022-04-14 15:14:18,600 INFO L272 TraceCheckUtils]: 13: Hoare triple {42#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {42#false} is VALID [2022-04-14 15:14:18,600 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-14 15:14:18,600 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-14 15:14:18,601 INFO L290 TraceCheckUtils]: 16: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-14 15:14:18,601 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-14 15:14:18,601 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:18,602 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1986156510] [2022-04-14 15:14:18,603 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1986156510] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:18,603 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:18,603 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 15:14:18,604 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [464801764] [2022-04-14 15:14:18,605 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:18,610 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-14 15:14:18,611 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:18,614 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:18,647 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:18,648 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 15:14:18,649 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:18,674 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 15:14:18,675 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 15:14:18,678 INFO L87 Difference]: Start difference. First operand has 38 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 23 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:18,841 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:18,841 INFO L93 Difference]: Finished difference Result 68 states and 101 transitions. [2022-04-14 15:14:18,842 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 15:14:18,842 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-14 15:14:18,842 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:18,843 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:18,852 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-14 15:14:18,852 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:18,859 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-14 15:14:18,863 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 101 transitions. [2022-04-14 15:14:18,975 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:18,988 INFO L225 Difference]: With dead ends: 68 [2022-04-14 15:14:18,988 INFO L226 Difference]: Without dead ends: 34 [2022-04-14 15:14:18,991 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 15:14:18,995 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 33 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:18,996 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 49 Invalid, 33 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 15:14:19,009 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-14 15:14:19,024 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-14 15:14:19,025 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:19,026 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:19,027 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:19,028 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:19,040 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:19,040 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-14 15:14:19,041 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 15:14:19,041 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:19,041 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:19,042 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 34 states. [2022-04-14 15:14:19,043 INFO L87 Difference]: Start difference. First operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 34 states. [2022-04-14 15:14:19,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:19,049 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-14 15:14:19,049 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 15:14:19,049 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:19,050 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:19,050 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:19,050 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:19,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 19 states have (on average 1.263157894736842) internal successors, (24), 20 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:19,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 42 transitions. [2022-04-14 15:14:19,057 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 42 transitions. Word has length 17 [2022-04-14 15:14:19,057 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:19,057 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 42 transitions. [2022-04-14 15:14:19,059 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:19,059 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 42 transitions. [2022-04-14 15:14:19,060 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-14 15:14:19,060 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:19,060 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:19,060 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 15:14:19,061 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:19,062 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:19,062 INFO L85 PathProgramCache]: Analyzing trace with hash 766070672, now seen corresponding path program 1 times [2022-04-14 15:14:19,062 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:19,062 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [708394853] [2022-04-14 15:14:19,062 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:19,063 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:19,100 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:19,101 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1416425364] [2022-04-14 15:14:19,101 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:19,101 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:19,102 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:19,107 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:14:19,126 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-14 15:14:19,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:19,169 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-14 15:14:19,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:19,181 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:19,307 INFO L272 TraceCheckUtils]: 0: Hoare triple {265#true} call ULTIMATE.init(); {265#true} is VALID [2022-04-14 15:14:19,308 INFO L290 TraceCheckUtils]: 1: Hoare triple {265#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:19,308 INFO L290 TraceCheckUtils]: 2: Hoare triple {273#(<= ~counter~0 0)} assume true; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:19,309 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {273#(<= ~counter~0 0)} {265#true} #93#return; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:19,309 INFO L272 TraceCheckUtils]: 4: Hoare triple {273#(<= ~counter~0 0)} call #t~ret8 := main(); {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:19,310 INFO L290 TraceCheckUtils]: 5: Hoare triple {273#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:19,310 INFO L272 TraceCheckUtils]: 6: Hoare triple {273#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:19,311 INFO L290 TraceCheckUtils]: 7: Hoare triple {273#(<= ~counter~0 0)} ~cond := #in~cond; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:19,311 INFO L290 TraceCheckUtils]: 8: Hoare triple {273#(<= ~counter~0 0)} assume !(0 == ~cond); {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:19,312 INFO L290 TraceCheckUtils]: 9: Hoare triple {273#(<= ~counter~0 0)} assume true; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:19,312 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {273#(<= ~counter~0 0)} {273#(<= ~counter~0 0)} #77#return; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:19,313 INFO L290 TraceCheckUtils]: 11: Hoare triple {273#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {273#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:19,313 INFO L290 TraceCheckUtils]: 12: Hoare triple {273#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {307#(<= |main_#t~post6| 0)} is VALID [2022-04-14 15:14:19,314 INFO L290 TraceCheckUtils]: 13: Hoare triple {307#(<= |main_#t~post6| 0)} assume !(#t~post6 < 20);havoc #t~post6; {266#false} is VALID [2022-04-14 15:14:19,314 INFO L272 TraceCheckUtils]: 14: Hoare triple {266#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {266#false} is VALID [2022-04-14 15:14:19,314 INFO L290 TraceCheckUtils]: 15: Hoare triple {266#false} ~cond := #in~cond; {266#false} is VALID [2022-04-14 15:14:19,314 INFO L290 TraceCheckUtils]: 16: Hoare triple {266#false} assume 0 == ~cond; {266#false} is VALID [2022-04-14 15:14:19,315 INFO L290 TraceCheckUtils]: 17: Hoare triple {266#false} assume !false; {266#false} is VALID [2022-04-14 15:14:19,315 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-14 15:14:19,315 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:14:19,315 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:19,315 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [708394853] [2022-04-14 15:14:19,316 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:19,316 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1416425364] [2022-04-14 15:14:19,316 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1416425364] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:19,316 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:19,316 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-14 15:14:19,317 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1865834024] [2022-04-14 15:14:19,317 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:19,318 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-14 15:14:19,318 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:19,318 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-14 15:14:19,333 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:19,334 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-14 15:14:19,334 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:19,334 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-14 15:14:19,334 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-14 15:14:19,335 INFO L87 Difference]: Start difference. First operand 33 states and 42 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-14 15:14:19,407 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:19,407 INFO L93 Difference]: Finished difference Result 42 states and 51 transitions. [2022-04-14 15:14:19,407 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-14 15:14:19,408 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-14 15:14:19,408 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:19,408 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-14 15:14:19,410 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-14 15:14:19,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-14 15:14:19,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-14 15:14:19,412 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 51 transitions. [2022-04-14 15:14:19,452 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:19,454 INFO L225 Difference]: With dead ends: 42 [2022-04-14 15:14:19,454 INFO L226 Difference]: Without dead ends: 35 [2022-04-14 15:14:19,454 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-14 15:14:19,455 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 0 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 107 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:19,456 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 107 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 15:14:19,457 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-14 15:14:19,463 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-14 15:14:19,464 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:19,464 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:19,464 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:19,465 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:19,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:19,467 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-14 15:14:19,467 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-14 15:14:19,468 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:19,468 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:19,469 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 35 states. [2022-04-14 15:14:19,469 INFO L87 Difference]: Start difference. First operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 35 states. [2022-04-14 15:14:19,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:19,471 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-14 15:14:19,472 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-14 15:14:19,472 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:19,472 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:19,472 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:19,473 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:19,473 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 15:14:19,475 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-14 15:14:19,475 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 18 [2022-04-14 15:14:19,475 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:19,475 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-14 15:14:19,475 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-14 15:14:19,475 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-14 15:14:19,476 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-14 15:14:19,476 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:19,476 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:19,502 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-14 15:14:19,690 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:19,691 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:19,691 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:19,691 INFO L85 PathProgramCache]: Analyzing trace with hash 767560222, now seen corresponding path program 1 times [2022-04-14 15:14:19,691 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:19,692 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1544982254] [2022-04-14 15:14:19,692 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:19,692 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:19,710 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:19,710 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [393907266] [2022-04-14 15:14:19,710 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:19,710 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:19,710 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:19,721 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:14:19,732 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-14 15:14:19,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:19,776 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 15:14:19,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:19,786 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:19,906 INFO L272 TraceCheckUtils]: 0: Hoare triple {505#true} call ULTIMATE.init(); {505#true} is VALID [2022-04-14 15:14:19,906 INFO L290 TraceCheckUtils]: 1: Hoare triple {505#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {505#true} is VALID [2022-04-14 15:14:19,907 INFO L290 TraceCheckUtils]: 2: Hoare triple {505#true} assume true; {505#true} is VALID [2022-04-14 15:14:19,907 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {505#true} {505#true} #93#return; {505#true} is VALID [2022-04-14 15:14:19,907 INFO L272 TraceCheckUtils]: 4: Hoare triple {505#true} call #t~ret8 := main(); {505#true} is VALID [2022-04-14 15:14:19,907 INFO L290 TraceCheckUtils]: 5: Hoare triple {505#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {505#true} is VALID [2022-04-14 15:14:19,908 INFO L272 TraceCheckUtils]: 6: Hoare triple {505#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {505#true} is VALID [2022-04-14 15:14:19,910 INFO L290 TraceCheckUtils]: 7: Hoare triple {505#true} ~cond := #in~cond; {505#true} is VALID [2022-04-14 15:14:19,910 INFO L290 TraceCheckUtils]: 8: Hoare triple {505#true} assume !(0 == ~cond); {505#true} is VALID [2022-04-14 15:14:19,911 INFO L290 TraceCheckUtils]: 9: Hoare triple {505#true} assume true; {505#true} is VALID [2022-04-14 15:14:19,911 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {505#true} {505#true} #77#return; {505#true} is VALID [2022-04-14 15:14:19,912 INFO L290 TraceCheckUtils]: 11: Hoare triple {505#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {543#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-14 15:14:19,912 INFO L290 TraceCheckUtils]: 12: Hoare triple {543#(and (= main_~a~0 0) (= main_~b~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {543#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-14 15:14:19,916 INFO L290 TraceCheckUtils]: 13: Hoare triple {543#(and (= main_~a~0 0) (= main_~b~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {543#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-14 15:14:19,917 INFO L272 TraceCheckUtils]: 14: Hoare triple {543#(and (= main_~a~0 0) (= main_~b~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {553#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:14:19,918 INFO L290 TraceCheckUtils]: 15: Hoare triple {553#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {557#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:19,919 INFO L290 TraceCheckUtils]: 16: Hoare triple {557#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {506#false} is VALID [2022-04-14 15:14:19,920 INFO L290 TraceCheckUtils]: 17: Hoare triple {506#false} assume !false; {506#false} is VALID [2022-04-14 15:14:19,920 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-14 15:14:19,920 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:14:19,920 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:19,921 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1544982254] [2022-04-14 15:14:19,921 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:19,921 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [393907266] [2022-04-14 15:14:19,922 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [393907266] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:19,922 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:19,922 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 15:14:19,922 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2036731676] [2022-04-14 15:14:19,922 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:19,922 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-14 15:14:19,923 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:19,923 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:19,937 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:19,938 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 15:14:19,938 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:19,938 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 15:14:19,938 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 15:14:19,939 INFO L87 Difference]: Start difference. First operand 35 states and 44 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:20,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:20,101 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-14 15:14:20,101 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 15:14:20,101 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-14 15:14:20,102 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:20,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:20,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-14 15:14:20,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:20,111 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-14 15:14:20,111 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-14 15:14:20,156 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:20,162 INFO L225 Difference]: With dead ends: 45 [2022-04-14 15:14:20,162 INFO L226 Difference]: Without dead ends: 43 [2022-04-14 15:14:20,163 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-14 15:14:20,165 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 6 mSDsluCounter, 104 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 28 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:20,167 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 145 Invalid, 28 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 15:14:20,168 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-14 15:14:20,186 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-14 15:14:20,186 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:20,187 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 15:14:20,187 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 15:14:20,187 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 15:14:20,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:20,191 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 15:14:20,191 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-14 15:14:20,192 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:20,192 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:20,193 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 43 states. [2022-04-14 15:14:20,193 INFO L87 Difference]: Start difference. First operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 43 states. [2022-04-14 15:14:20,195 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:20,195 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 15:14:20,195 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-14 15:14:20,196 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:20,196 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:20,196 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:20,196 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:20,197 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 26 states have internal predecessors, (29), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 15:14:20,198 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-14 15:14:20,199 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 18 [2022-04-14 15:14:20,199 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:20,199 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-14 15:14:20,199 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 15:14:20,199 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-14 15:14:20,200 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-14 15:14:20,200 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:20,200 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:20,223 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-14 15:14:20,419 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-14 15:14:20,420 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:20,421 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:20,421 INFO L85 PathProgramCache]: Analyzing trace with hash -1016228092, now seen corresponding path program 1 times [2022-04-14 15:14:20,421 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:20,421 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1494852835] [2022-04-14 15:14:20,421 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:20,421 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:20,438 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:20,439 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [690991281] [2022-04-14 15:14:20,439 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:20,439 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:20,439 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:20,440 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:14:20,444 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-14 15:14:20,477 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:20,477 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 15:14:20,485 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:20,486 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:20,576 INFO L272 TraceCheckUtils]: 0: Hoare triple {776#true} call ULTIMATE.init(); {776#true} is VALID [2022-04-14 15:14:20,577 INFO L290 TraceCheckUtils]: 1: Hoare triple {776#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {776#true} is VALID [2022-04-14 15:14:20,577 INFO L290 TraceCheckUtils]: 2: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-14 15:14:20,577 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {776#true} {776#true} #93#return; {776#true} is VALID [2022-04-14 15:14:20,577 INFO L272 TraceCheckUtils]: 4: Hoare triple {776#true} call #t~ret8 := main(); {776#true} is VALID [2022-04-14 15:14:20,577 INFO L290 TraceCheckUtils]: 5: Hoare triple {776#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {776#true} is VALID [2022-04-14 15:14:20,578 INFO L272 TraceCheckUtils]: 6: Hoare triple {776#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {776#true} is VALID [2022-04-14 15:14:20,578 INFO L290 TraceCheckUtils]: 7: Hoare triple {776#true} ~cond := #in~cond; {776#true} is VALID [2022-04-14 15:14:20,578 INFO L290 TraceCheckUtils]: 8: Hoare triple {776#true} assume !(0 == ~cond); {776#true} is VALID [2022-04-14 15:14:20,578 INFO L290 TraceCheckUtils]: 9: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-14 15:14:20,578 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {776#true} {776#true} #77#return; {776#true} is VALID [2022-04-14 15:14:20,579 INFO L290 TraceCheckUtils]: 11: Hoare triple {776#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:20,579 INFO L290 TraceCheckUtils]: 12: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:20,580 INFO L290 TraceCheckUtils]: 13: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:20,580 INFO L272 TraceCheckUtils]: 14: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {776#true} is VALID [2022-04-14 15:14:20,580 INFO L290 TraceCheckUtils]: 15: Hoare triple {776#true} ~cond := #in~cond; {776#true} is VALID [2022-04-14 15:14:20,580 INFO L290 TraceCheckUtils]: 16: Hoare triple {776#true} assume !(0 == ~cond); {776#true} is VALID [2022-04-14 15:14:20,580 INFO L290 TraceCheckUtils]: 17: Hoare triple {776#true} assume true; {776#true} is VALID [2022-04-14 15:14:20,581 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {776#true} {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:20,582 INFO L272 TraceCheckUtils]: 19: Hoare triple {814#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {839#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:14:20,583 INFO L290 TraceCheckUtils]: 20: Hoare triple {839#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {843#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:20,583 INFO L290 TraceCheckUtils]: 21: Hoare triple {843#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {777#false} is VALID [2022-04-14 15:14:20,583 INFO L290 TraceCheckUtils]: 22: Hoare triple {777#false} assume !false; {777#false} is VALID [2022-04-14 15:14:20,584 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-14 15:14:20,584 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:14:20,584 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:20,584 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1494852835] [2022-04-14 15:14:20,584 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:20,584 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [690991281] [2022-04-14 15:14:20,584 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [690991281] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:20,584 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:20,585 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 15:14:20,585 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1863647730] [2022-04-14 15:14:20,585 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:20,585 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-14 15:14:20,586 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:20,586 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 15:14:20,603 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:20,603 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 15:14:20,603 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:20,604 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 15:14:20,604 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 15:14:20,604 INFO L87 Difference]: Start difference. First operand 40 states and 49 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 15:14:20,796 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:20,798 INFO L93 Difference]: Finished difference Result 58 states and 74 transitions. [2022-04-14 15:14:20,798 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 15:14:20,798 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-14 15:14:20,798 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:20,799 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 15:14:20,802 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-14 15:14:20,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 15:14:20,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-14 15:14:20,808 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 71 transitions. [2022-04-14 15:14:20,870 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:20,873 INFO L225 Difference]: With dead ends: 58 [2022-04-14 15:14:20,873 INFO L226 Difference]: Without dead ends: 55 [2022-04-14 15:14:20,874 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-14 15:14:20,876 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 13 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:20,879 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 139 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 15:14:20,880 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-14 15:14:20,892 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 54. [2022-04-14 15:14:20,892 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:20,892 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-14 15:14:20,894 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-14 15:14:20,896 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-14 15:14:20,900 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:20,900 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-14 15:14:20,900 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-14 15:14:20,902 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:20,903 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:20,904 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 55 states. [2022-04-14 15:14:20,905 INFO L87 Difference]: Start difference. First operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 55 states. [2022-04-14 15:14:20,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:20,909 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-14 15:14:20,909 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-14 15:14:20,910 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:20,910 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:20,910 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:20,910 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:20,910 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-14 15:14:20,913 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 69 transitions. [2022-04-14 15:14:20,913 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 69 transitions. Word has length 23 [2022-04-14 15:14:20,913 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:20,913 INFO L478 AbstractCegarLoop]: Abstraction has 54 states and 69 transitions. [2022-04-14 15:14:20,913 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-14 15:14:20,913 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 69 transitions. [2022-04-14 15:14:20,914 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-14 15:14:20,914 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:20,914 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:20,936 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-14 15:14:21,127 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:21,128 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:21,128 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:21,128 INFO L85 PathProgramCache]: Analyzing trace with hash 2019703110, now seen corresponding path program 1 times [2022-04-14 15:14:21,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:21,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2016926674] [2022-04-14 15:14:21,128 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:21,129 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:21,142 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:21,142 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1829992939] [2022-04-14 15:14:21,142 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:21,143 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:21,143 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:21,144 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:14:21,151 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-14 15:14:21,195 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:21,196 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 15:14:21,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:21,213 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:21,315 INFO L272 TraceCheckUtils]: 0: Hoare triple {1126#true} call ULTIMATE.init(); {1126#true} is VALID [2022-04-14 15:14:21,315 INFO L290 TraceCheckUtils]: 1: Hoare triple {1126#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1126#true} is VALID [2022-04-14 15:14:21,315 INFO L290 TraceCheckUtils]: 2: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-14 15:14:21,315 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1126#true} {1126#true} #93#return; {1126#true} is VALID [2022-04-14 15:14:21,316 INFO L272 TraceCheckUtils]: 4: Hoare triple {1126#true} call #t~ret8 := main(); {1126#true} is VALID [2022-04-14 15:14:21,316 INFO L290 TraceCheckUtils]: 5: Hoare triple {1126#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1126#true} is VALID [2022-04-14 15:14:21,316 INFO L272 TraceCheckUtils]: 6: Hoare triple {1126#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1126#true} is VALID [2022-04-14 15:14:21,316 INFO L290 TraceCheckUtils]: 7: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-14 15:14:21,316 INFO L290 TraceCheckUtils]: 8: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-14 15:14:21,316 INFO L290 TraceCheckUtils]: 9: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-14 15:14:21,317 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1126#true} {1126#true} #77#return; {1126#true} is VALID [2022-04-14 15:14:21,317 INFO L290 TraceCheckUtils]: 11: Hoare triple {1126#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1126#true} is VALID [2022-04-14 15:14:21,317 INFO L290 TraceCheckUtils]: 12: Hoare triple {1126#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1126#true} is VALID [2022-04-14 15:14:21,317 INFO L290 TraceCheckUtils]: 13: Hoare triple {1126#true} assume !!(#t~post6 < 20);havoc #t~post6; {1126#true} is VALID [2022-04-14 15:14:21,317 INFO L272 TraceCheckUtils]: 14: Hoare triple {1126#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1126#true} is VALID [2022-04-14 15:14:21,317 INFO L290 TraceCheckUtils]: 15: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-14 15:14:21,317 INFO L290 TraceCheckUtils]: 16: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-14 15:14:21,318 INFO L290 TraceCheckUtils]: 17: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-14 15:14:21,318 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1126#true} {1126#true} #79#return; {1126#true} is VALID [2022-04-14 15:14:21,320 INFO L272 TraceCheckUtils]: 19: Hoare triple {1126#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1126#true} is VALID [2022-04-14 15:14:21,320 INFO L290 TraceCheckUtils]: 20: Hoare triple {1126#true} ~cond := #in~cond; {1126#true} is VALID [2022-04-14 15:14:21,320 INFO L290 TraceCheckUtils]: 21: Hoare triple {1126#true} assume !(0 == ~cond); {1126#true} is VALID [2022-04-14 15:14:21,320 INFO L290 TraceCheckUtils]: 22: Hoare triple {1126#true} assume true; {1126#true} is VALID [2022-04-14 15:14:21,320 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1126#true} {1126#true} #81#return; {1126#true} is VALID [2022-04-14 15:14:21,321 INFO L290 TraceCheckUtils]: 24: Hoare triple {1126#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-14 15:14:21,321 INFO L290 TraceCheckUtils]: 25: Hoare triple {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-14 15:14:21,322 INFO L290 TraceCheckUtils]: 26: Hoare triple {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} assume !!(#t~post7 < 20);havoc #t~post7; {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-14 15:14:21,323 INFO L272 TraceCheckUtils]: 27: Hoare triple {1203#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1213#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:14:21,323 INFO L290 TraceCheckUtils]: 28: Hoare triple {1213#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1217#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:21,323 INFO L290 TraceCheckUtils]: 29: Hoare triple {1217#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1127#false} is VALID [2022-04-14 15:14:21,324 INFO L290 TraceCheckUtils]: 30: Hoare triple {1127#false} assume !false; {1127#false} is VALID [2022-04-14 15:14:21,324 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 15:14:21,324 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:14:21,324 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:21,324 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2016926674] [2022-04-14 15:14:21,324 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:21,329 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1829992939] [2022-04-14 15:14:21,329 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1829992939] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:21,329 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:21,329 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 15:14:21,329 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [827839819] [2022-04-14 15:14:21,329 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:21,330 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 31 [2022-04-14 15:14:21,331 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:21,331 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 15:14:21,351 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:21,351 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 15:14:21,351 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:21,352 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 15:14:21,352 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 15:14:21,352 INFO L87 Difference]: Start difference. First operand 54 states and 69 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 15:14:21,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:21,567 INFO L93 Difference]: Finished difference Result 83 states and 113 transitions. [2022-04-14 15:14:21,567 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 15:14:21,567 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 31 [2022-04-14 15:14:21,569 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:21,569 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 15:14:21,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-14 15:14:21,571 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 15:14:21,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-14 15:14:21,573 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 72 transitions. [2022-04-14 15:14:21,642 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:21,646 INFO L225 Difference]: With dead ends: 83 [2022-04-14 15:14:21,646 INFO L226 Difference]: Without dead ends: 81 [2022-04-14 15:14:21,646 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 27 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-14 15:14:21,647 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 13 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 62 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 62 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:21,647 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 145 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 62 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 15:14:21,648 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-04-14 15:14:21,663 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 74. [2022-04-14 15:14:21,663 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:21,664 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:21,664 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:21,668 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:21,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:21,673 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-14 15:14:21,673 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-14 15:14:21,673 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:21,673 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:21,674 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 81 states. [2022-04-14 15:14:21,675 INFO L87 Difference]: Start difference. First operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 81 states. [2022-04-14 15:14:21,679 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:21,679 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-14 15:14:21,679 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-14 15:14:21,679 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:21,679 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:21,679 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:21,680 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:21,680 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 44 states have (on average 1.2727272727272727) internal successors, (56), 46 states have internal predecessors, (56), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:21,682 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 100 transitions. [2022-04-14 15:14:21,683 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 100 transitions. Word has length 31 [2022-04-14 15:14:21,683 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:21,683 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 100 transitions. [2022-04-14 15:14:21,683 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 15:14:21,683 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 100 transitions. [2022-04-14 15:14:21,684 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-14 15:14:21,684 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:21,684 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:21,702 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-14 15:14:21,890 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:21,890 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:21,891 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:21,891 INFO L85 PathProgramCache]: Analyzing trace with hash 202176206, now seen corresponding path program 1 times [2022-04-14 15:14:21,891 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:21,891 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [281579445] [2022-04-14 15:14:21,891 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:21,891 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:21,921 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:21,921 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1924525658] [2022-04-14 15:14:21,921 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:21,921 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:21,921 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:21,922 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:14:21,927 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-14 15:14:21,967 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:21,968 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 15:14:21,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:21,978 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:22,134 INFO L272 TraceCheckUtils]: 0: Hoare triple {1622#true} call ULTIMATE.init(); {1622#true} is VALID [2022-04-14 15:14:22,135 INFO L290 TraceCheckUtils]: 1: Hoare triple {1622#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:22,135 INFO L290 TraceCheckUtils]: 2: Hoare triple {1630#(<= ~counter~0 0)} assume true; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:22,136 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1630#(<= ~counter~0 0)} {1622#true} #93#return; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:22,137 INFO L272 TraceCheckUtils]: 4: Hoare triple {1630#(<= ~counter~0 0)} call #t~ret8 := main(); {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:22,137 INFO L290 TraceCheckUtils]: 5: Hoare triple {1630#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:22,138 INFO L272 TraceCheckUtils]: 6: Hoare triple {1630#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:22,140 INFO L290 TraceCheckUtils]: 7: Hoare triple {1630#(<= ~counter~0 0)} ~cond := #in~cond; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:22,140 INFO L290 TraceCheckUtils]: 8: Hoare triple {1630#(<= ~counter~0 0)} assume !(0 == ~cond); {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:22,147 INFO L290 TraceCheckUtils]: 9: Hoare triple {1630#(<= ~counter~0 0)} assume true; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:22,148 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1630#(<= ~counter~0 0)} {1630#(<= ~counter~0 0)} #77#return; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:22,148 INFO L290 TraceCheckUtils]: 11: Hoare triple {1630#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1630#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:22,149 INFO L290 TraceCheckUtils]: 12: Hoare triple {1630#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,149 INFO L290 TraceCheckUtils]: 13: Hoare triple {1664#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,150 INFO L272 TraceCheckUtils]: 14: Hoare triple {1664#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,150 INFO L290 TraceCheckUtils]: 15: Hoare triple {1664#(<= ~counter~0 1)} ~cond := #in~cond; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,151 INFO L290 TraceCheckUtils]: 16: Hoare triple {1664#(<= ~counter~0 1)} assume !(0 == ~cond); {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,151 INFO L290 TraceCheckUtils]: 17: Hoare triple {1664#(<= ~counter~0 1)} assume true; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,152 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1664#(<= ~counter~0 1)} {1664#(<= ~counter~0 1)} #79#return; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,152 INFO L272 TraceCheckUtils]: 19: Hoare triple {1664#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,153 INFO L290 TraceCheckUtils]: 20: Hoare triple {1664#(<= ~counter~0 1)} ~cond := #in~cond; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,153 INFO L290 TraceCheckUtils]: 21: Hoare triple {1664#(<= ~counter~0 1)} assume !(0 == ~cond); {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,154 INFO L290 TraceCheckUtils]: 22: Hoare triple {1664#(<= ~counter~0 1)} assume true; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,154 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1664#(<= ~counter~0 1)} {1664#(<= ~counter~0 1)} #81#return; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,155 INFO L290 TraceCheckUtils]: 24: Hoare triple {1664#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1664#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:22,155 INFO L290 TraceCheckUtils]: 25: Hoare triple {1664#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1704#(<= |main_#t~post7| 1)} is VALID [2022-04-14 15:14:22,156 INFO L290 TraceCheckUtils]: 26: Hoare triple {1704#(<= |main_#t~post7| 1)} assume !(#t~post7 < 20);havoc #t~post7; {1623#false} is VALID [2022-04-14 15:14:22,156 INFO L290 TraceCheckUtils]: 27: Hoare triple {1623#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {1623#false} is VALID [2022-04-14 15:14:22,156 INFO L290 TraceCheckUtils]: 28: Hoare triple {1623#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1623#false} is VALID [2022-04-14 15:14:22,156 INFO L290 TraceCheckUtils]: 29: Hoare triple {1623#false} assume !(#t~post6 < 20);havoc #t~post6; {1623#false} is VALID [2022-04-14 15:14:22,156 INFO L272 TraceCheckUtils]: 30: Hoare triple {1623#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1623#false} is VALID [2022-04-14 15:14:22,156 INFO L290 TraceCheckUtils]: 31: Hoare triple {1623#false} ~cond := #in~cond; {1623#false} is VALID [2022-04-14 15:14:22,157 INFO L290 TraceCheckUtils]: 32: Hoare triple {1623#false} assume 0 == ~cond; {1623#false} is VALID [2022-04-14 15:14:22,157 INFO L290 TraceCheckUtils]: 33: Hoare triple {1623#false} assume !false; {1623#false} is VALID [2022-04-14 15:14:22,157 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 15:14:22,157 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:14:22,157 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:22,157 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [281579445] [2022-04-14 15:14:22,157 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:22,157 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1924525658] [2022-04-14 15:14:22,158 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1924525658] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:22,158 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:22,158 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 15:14:22,158 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [553089189] [2022-04-14 15:14:22,158 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:22,158 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 34 [2022-04-14 15:14:22,159 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:22,159 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 15:14:22,185 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:22,185 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 15:14:22,185 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:22,186 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 15:14:22,186 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-14 15:14:22,186 INFO L87 Difference]: Start difference. First operand 74 states and 100 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 15:14:22,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:22,300 INFO L93 Difference]: Finished difference Result 113 states and 153 transitions. [2022-04-14 15:14:22,300 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 15:14:22,301 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 34 [2022-04-14 15:14:22,301 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:22,301 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 15:14:22,303 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-14 15:14:22,303 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 15:14:22,304 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-14 15:14:22,304 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 85 transitions. [2022-04-14 15:14:22,374 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:22,376 INFO L225 Difference]: With dead ends: 113 [2022-04-14 15:14:22,377 INFO L226 Difference]: Without dead ends: 78 [2022-04-14 15:14:22,377 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-14 15:14:22,378 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 6 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 17 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 17 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:22,378 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 135 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 17 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 15:14:22,379 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-14 15:14:22,392 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-14 15:14:22,392 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:22,392 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:22,393 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:22,393 INFO L87 Difference]: Start difference. First operand 78 states. Second operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:22,396 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:22,397 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-14 15:14:22,397 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-14 15:14:22,397 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:22,397 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:22,398 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 78 states. [2022-04-14 15:14:22,398 INFO L87 Difference]: Start difference. First operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 78 states. [2022-04-14 15:14:22,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:22,401 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-14 15:14:22,401 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-14 15:14:22,402 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:22,402 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:22,402 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:22,402 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:22,402 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 47 states have (on average 1.2340425531914894) internal successors, (58), 49 states have internal predecessors, (58), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:22,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 102 transitions. [2022-04-14 15:14:22,405 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 102 transitions. Word has length 34 [2022-04-14 15:14:22,406 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:22,406 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 102 transitions. [2022-04-14 15:14:22,406 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 15:14:22,406 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-14 15:14:22,406 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-14 15:14:22,407 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:22,407 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:22,431 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-14 15:14:22,623 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:22,623 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:22,624 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:22,624 INFO L85 PathProgramCache]: Analyzing trace with hash 1813008070, now seen corresponding path program 1 times [2022-04-14 15:14:22,624 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:22,624 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1508406798] [2022-04-14 15:14:22,624 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:22,624 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:22,643 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:22,644 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1929484778] [2022-04-14 15:14:22,644 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:22,644 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:22,644 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:22,645 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:14:22,670 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-14 15:14:22,694 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:22,695 INFO L263 TraceCheckSpWp]: Trace formula consists of 132 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 15:14:22,706 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:22,708 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:22,882 INFO L272 TraceCheckUtils]: 0: Hoare triple {2168#true} call ULTIMATE.init(); {2168#true} is VALID [2022-04-14 15:14:22,882 INFO L290 TraceCheckUtils]: 1: Hoare triple {2168#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2168#true} is VALID [2022-04-14 15:14:22,883 INFO L290 TraceCheckUtils]: 2: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-14 15:14:22,883 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2168#true} {2168#true} #93#return; {2168#true} is VALID [2022-04-14 15:14:22,883 INFO L272 TraceCheckUtils]: 4: Hoare triple {2168#true} call #t~ret8 := main(); {2168#true} is VALID [2022-04-14 15:14:22,883 INFO L290 TraceCheckUtils]: 5: Hoare triple {2168#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2168#true} is VALID [2022-04-14 15:14:22,884 INFO L272 TraceCheckUtils]: 6: Hoare triple {2168#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2168#true} is VALID [2022-04-14 15:14:22,884 INFO L290 TraceCheckUtils]: 7: Hoare triple {2168#true} ~cond := #in~cond; {2194#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 15:14:22,884 INFO L290 TraceCheckUtils]: 8: Hoare triple {2194#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2198#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:14:22,885 INFO L290 TraceCheckUtils]: 9: Hoare triple {2198#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2198#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 15:14:22,885 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2198#(not (= |assume_abort_if_not_#in~cond| 0))} {2168#true} #77#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:14:22,886 INFO L290 TraceCheckUtils]: 11: Hoare triple {2205#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:14:22,886 INFO L290 TraceCheckUtils]: 12: Hoare triple {2205#(<= 1 main_~y~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:14:22,886 INFO L290 TraceCheckUtils]: 13: Hoare triple {2205#(<= 1 main_~y~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:14:22,886 INFO L272 TraceCheckUtils]: 14: Hoare triple {2205#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2168#true} is VALID [2022-04-14 15:14:22,887 INFO L290 TraceCheckUtils]: 15: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-14 15:14:22,887 INFO L290 TraceCheckUtils]: 16: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-14 15:14:22,887 INFO L290 TraceCheckUtils]: 17: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-14 15:14:22,887 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2168#true} {2205#(<= 1 main_~y~0)} #79#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:14:22,888 INFO L272 TraceCheckUtils]: 19: Hoare triple {2205#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2168#true} is VALID [2022-04-14 15:14:22,888 INFO L290 TraceCheckUtils]: 20: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-14 15:14:22,888 INFO L290 TraceCheckUtils]: 21: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-14 15:14:22,888 INFO L290 TraceCheckUtils]: 22: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-14 15:14:22,889 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2168#true} {2205#(<= 1 main_~y~0)} #81#return; {2205#(<= 1 main_~y~0)} is VALID [2022-04-14 15:14:22,889 INFO L290 TraceCheckUtils]: 24: Hoare triple {2205#(<= 1 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2248#(<= 1 main_~r~0)} is VALID [2022-04-14 15:14:22,889 INFO L290 TraceCheckUtils]: 25: Hoare triple {2248#(<= 1 main_~r~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2248#(<= 1 main_~r~0)} is VALID [2022-04-14 15:14:22,890 INFO L290 TraceCheckUtils]: 26: Hoare triple {2248#(<= 1 main_~r~0)} assume !!(#t~post7 < 20);havoc #t~post7; {2248#(<= 1 main_~r~0)} is VALID [2022-04-14 15:14:22,890 INFO L272 TraceCheckUtils]: 27: Hoare triple {2248#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2168#true} is VALID [2022-04-14 15:14:22,890 INFO L290 TraceCheckUtils]: 28: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-14 15:14:22,890 INFO L290 TraceCheckUtils]: 29: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-14 15:14:22,890 INFO L290 TraceCheckUtils]: 30: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-14 15:14:22,891 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2168#true} {2248#(<= 1 main_~r~0)} #83#return; {2248#(<= 1 main_~r~0)} is VALID [2022-04-14 15:14:22,891 INFO L272 TraceCheckUtils]: 32: Hoare triple {2248#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2168#true} is VALID [2022-04-14 15:14:22,891 INFO L290 TraceCheckUtils]: 33: Hoare triple {2168#true} ~cond := #in~cond; {2168#true} is VALID [2022-04-14 15:14:22,891 INFO L290 TraceCheckUtils]: 34: Hoare triple {2168#true} assume !(0 == ~cond); {2168#true} is VALID [2022-04-14 15:14:22,891 INFO L290 TraceCheckUtils]: 35: Hoare triple {2168#true} assume true; {2168#true} is VALID [2022-04-14 15:14:22,892 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2168#true} {2248#(<= 1 main_~r~0)} #85#return; {2248#(<= 1 main_~r~0)} is VALID [2022-04-14 15:14:22,892 INFO L272 TraceCheckUtils]: 37: Hoare triple {2248#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2288#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:14:22,893 INFO L290 TraceCheckUtils]: 38: Hoare triple {2288#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2292#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:22,897 INFO L290 TraceCheckUtils]: 39: Hoare triple {2292#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2169#false} is VALID [2022-04-14 15:14:22,897 INFO L290 TraceCheckUtils]: 40: Hoare triple {2169#false} assume !false; {2169#false} is VALID [2022-04-14 15:14:22,898 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-14 15:14:22,898 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 15:14:22,898 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:22,898 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1508406798] [2022-04-14 15:14:22,899 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:22,899 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1929484778] [2022-04-14 15:14:22,899 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1929484778] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 15:14:22,899 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 15:14:22,899 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-14 15:14:22,899 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [684359687] [2022-04-14 15:14:22,899 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 15:14:22,900 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 41 [2022-04-14 15:14:22,900 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:22,900 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:14:22,923 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:22,924 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 15:14:22,924 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:22,924 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 15:14:22,925 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-14 15:14:22,925 INFO L87 Difference]: Start difference. First operand 78 states and 102 transitions. Second operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:14:23,242 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:23,243 INFO L93 Difference]: Finished difference Result 84 states and 107 transitions. [2022-04-14 15:14:23,243 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 15:14:23,243 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 41 [2022-04-14 15:14:23,243 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:23,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:14:23,245 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 15:14:23,245 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:14:23,246 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 15:14:23,246 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-14 15:14:23,284 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:23,287 INFO L225 Difference]: With dead ends: 84 [2022-04-14 15:14:23,287 INFO L226 Difference]: Without dead ends: 82 [2022-04-14 15:14:23,287 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-14 15:14:23,288 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 20 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 105 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 167 SdHoareTripleChecker+Invalid, 112 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 105 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:23,288 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 167 Invalid, 112 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 105 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 15:14:23,288 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-04-14 15:14:23,335 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 82. [2022-04-14 15:14:23,335 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:23,335 INFO L82 GeneralOperation]: Start isEquivalent. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:23,336 INFO L74 IsIncluded]: Start isIncluded. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:23,336 INFO L87 Difference]: Start difference. First operand 82 states. Second operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:23,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:23,339 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-14 15:14:23,339 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-14 15:14:23,340 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:23,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:23,340 INFO L74 IsIncluded]: Start isIncluded. First operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 82 states. [2022-04-14 15:14:23,340 INFO L87 Difference]: Start difference. First operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 82 states. [2022-04-14 15:14:23,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:23,344 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-14 15:14:23,344 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-14 15:14:23,345 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:23,345 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:23,345 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:23,345 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:23,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 82 states, 50 states have (on average 1.22) internal successors, (61), 52 states have internal predecessors, (61), 23 states have call successors, (23), 9 states have call predecessors, (23), 8 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:23,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 105 transitions. [2022-04-14 15:14:23,349 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 105 transitions. Word has length 41 [2022-04-14 15:14:23,349 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:23,349 INFO L478 AbstractCegarLoop]: Abstraction has 82 states and 105 transitions. [2022-04-14 15:14:23,349 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.25) internal successors, (18), 7 states have internal predecessors, (18), 3 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-14 15:14:23,349 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-14 15:14:23,350 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-14 15:14:23,350 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:23,350 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:23,373 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-14 15:14:23,563 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:23,564 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:23,564 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:23,564 INFO L85 PathProgramCache]: Analyzing trace with hash -683043127, now seen corresponding path program 1 times [2022-04-14 15:14:23,564 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:23,564 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2039214911] [2022-04-14 15:14:23,564 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:23,564 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:23,583 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:23,583 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [379152688] [2022-04-14 15:14:23,584 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:23,584 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:23,584 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:23,588 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:14:23,589 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-14 15:14:23,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:23,630 INFO L263 TraceCheckSpWp]: Trace formula consists of 142 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 15:14:23,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:23,641 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:23,893 INFO L272 TraceCheckUtils]: 0: Hoare triple {2712#true} call ULTIMATE.init(); {2712#true} is VALID [2022-04-14 15:14:23,893 INFO L290 TraceCheckUtils]: 1: Hoare triple {2712#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2712#true} is VALID [2022-04-14 15:14:23,894 INFO L290 TraceCheckUtils]: 2: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:23,894 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2712#true} {2712#true} #93#return; {2712#true} is VALID [2022-04-14 15:14:23,894 INFO L272 TraceCheckUtils]: 4: Hoare triple {2712#true} call #t~ret8 := main(); {2712#true} is VALID [2022-04-14 15:14:23,894 INFO L290 TraceCheckUtils]: 5: Hoare triple {2712#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2712#true} is VALID [2022-04-14 15:14:23,894 INFO L272 TraceCheckUtils]: 6: Hoare triple {2712#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:23,894 INFO L290 TraceCheckUtils]: 7: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:14:23,894 INFO L290 TraceCheckUtils]: 8: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:14:23,894 INFO L290 TraceCheckUtils]: 9: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:23,894 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2712#true} {2712#true} #77#return; {2712#true} is VALID [2022-04-14 15:14:23,895 INFO L290 TraceCheckUtils]: 11: Hoare triple {2712#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2712#true} is VALID [2022-04-14 15:14:23,895 INFO L290 TraceCheckUtils]: 12: Hoare triple {2712#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2712#true} is VALID [2022-04-14 15:14:23,895 INFO L290 TraceCheckUtils]: 13: Hoare triple {2712#true} assume !!(#t~post6 < 20);havoc #t~post6; {2712#true} is VALID [2022-04-14 15:14:23,895 INFO L272 TraceCheckUtils]: 14: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:23,895 INFO L290 TraceCheckUtils]: 15: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:14:23,895 INFO L290 TraceCheckUtils]: 16: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:14:23,895 INFO L290 TraceCheckUtils]: 17: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:23,896 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2712#true} {2712#true} #79#return; {2712#true} is VALID [2022-04-14 15:14:23,896 INFO L272 TraceCheckUtils]: 19: Hoare triple {2712#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:23,896 INFO L290 TraceCheckUtils]: 20: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:14:23,896 INFO L290 TraceCheckUtils]: 21: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:14:23,896 INFO L290 TraceCheckUtils]: 22: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:23,896 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2712#true} {2712#true} #81#return; {2712#true} is VALID [2022-04-14 15:14:23,896 INFO L290 TraceCheckUtils]: 24: Hoare triple {2712#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2712#true} is VALID [2022-04-14 15:14:23,896 INFO L290 TraceCheckUtils]: 25: Hoare triple {2712#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2712#true} is VALID [2022-04-14 15:14:23,897 INFO L290 TraceCheckUtils]: 26: Hoare triple {2712#true} assume !!(#t~post7 < 20);havoc #t~post7; {2712#true} is VALID [2022-04-14 15:14:23,897 INFO L272 TraceCheckUtils]: 27: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:23,898 INFO L290 TraceCheckUtils]: 28: Hoare triple {2712#true} ~cond := #in~cond; {2801#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:23,899 INFO L290 TraceCheckUtils]: 29: Hoare triple {2801#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:14:23,899 INFO L290 TraceCheckUtils]: 30: Hoare triple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:14:23,900 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} {2712#true} #83#return; {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 15:14:23,900 INFO L272 TraceCheckUtils]: 32: Hoare triple {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:23,900 INFO L290 TraceCheckUtils]: 33: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:14:23,901 INFO L290 TraceCheckUtils]: 34: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:14:23,901 INFO L290 TraceCheckUtils]: 35: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:23,902 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2712#true} {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} #85#return; {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 15:14:23,902 INFO L272 TraceCheckUtils]: 37: Hoare triple {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:23,902 INFO L290 TraceCheckUtils]: 38: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:14:23,902 INFO L290 TraceCheckUtils]: 39: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:14:23,902 INFO L290 TraceCheckUtils]: 40: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:23,903 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2712#true} {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} #87#return; {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 15:14:23,903 INFO L290 TraceCheckUtils]: 42: Hoare triple {2812#(= main_~b~0 (* main_~a~0 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-14 15:14:23,904 INFO L272 TraceCheckUtils]: 43: Hoare triple {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:14:23,905 INFO L290 TraceCheckUtils]: 44: Hoare triple {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:23,905 INFO L290 TraceCheckUtils]: 45: Hoare triple {2854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2713#false} is VALID [2022-04-14 15:14:23,905 INFO L290 TraceCheckUtils]: 46: Hoare triple {2713#false} assume !false; {2713#false} is VALID [2022-04-14 15:14:23,905 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-14 15:14:23,906 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:14:26,866 INFO L290 TraceCheckUtils]: 46: Hoare triple {2713#false} assume !false; {2713#false} is VALID [2022-04-14 15:14:26,866 INFO L290 TraceCheckUtils]: 45: Hoare triple {2854#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2713#false} is VALID [2022-04-14 15:14:26,867 INFO L290 TraceCheckUtils]: 44: Hoare triple {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2854#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:26,867 INFO L272 TraceCheckUtils]: 43: Hoare triple {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {2850#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:14:26,868 INFO L290 TraceCheckUtils]: 42: Hoare triple {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} assume !!(~r~0 >= 2 * ~b~0); {2846#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-14 15:14:26,869 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2712#true} {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #87#return; {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 15:14:26,869 INFO L290 TraceCheckUtils]: 40: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:26,869 INFO L290 TraceCheckUtils]: 39: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:14:26,869 INFO L290 TraceCheckUtils]: 38: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:14:26,869 INFO L272 TraceCheckUtils]: 37: Hoare triple {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:26,869 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2712#true} {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #85#return; {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 15:14:26,870 INFO L290 TraceCheckUtils]: 35: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:26,870 INFO L290 TraceCheckUtils]: 34: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:14:26,870 INFO L290 TraceCheckUtils]: 33: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:14:26,870 INFO L272 TraceCheckUtils]: 32: Hoare triple {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:26,871 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} {2712#true} #83#return; {2873#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 15:14:26,873 INFO L290 TraceCheckUtils]: 30: Hoare triple {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:14:26,874 INFO L290 TraceCheckUtils]: 29: Hoare triple {2916#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {2805#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:14:26,874 INFO L290 TraceCheckUtils]: 28: Hoare triple {2712#true} ~cond := #in~cond; {2916#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 15:14:26,874 INFO L272 TraceCheckUtils]: 27: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:26,875 INFO L290 TraceCheckUtils]: 26: Hoare triple {2712#true} assume !!(#t~post7 < 20);havoc #t~post7; {2712#true} is VALID [2022-04-14 15:14:26,875 INFO L290 TraceCheckUtils]: 25: Hoare triple {2712#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2712#true} is VALID [2022-04-14 15:14:26,875 INFO L290 TraceCheckUtils]: 24: Hoare triple {2712#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2712#true} is VALID [2022-04-14 15:14:26,875 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2712#true} {2712#true} #81#return; {2712#true} is VALID [2022-04-14 15:14:26,875 INFO L290 TraceCheckUtils]: 22: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:26,875 INFO L290 TraceCheckUtils]: 21: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:14:26,875 INFO L290 TraceCheckUtils]: 20: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:14:26,875 INFO L272 TraceCheckUtils]: 19: Hoare triple {2712#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:26,876 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2712#true} {2712#true} #79#return; {2712#true} is VALID [2022-04-14 15:14:26,876 INFO L290 TraceCheckUtils]: 17: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:26,876 INFO L290 TraceCheckUtils]: 16: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:14:26,876 INFO L290 TraceCheckUtils]: 15: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:14:26,876 INFO L272 TraceCheckUtils]: 14: Hoare triple {2712#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:26,876 INFO L290 TraceCheckUtils]: 13: Hoare triple {2712#true} assume !!(#t~post6 < 20);havoc #t~post6; {2712#true} is VALID [2022-04-14 15:14:26,876 INFO L290 TraceCheckUtils]: 12: Hoare triple {2712#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2712#true} is VALID [2022-04-14 15:14:26,876 INFO L290 TraceCheckUtils]: 11: Hoare triple {2712#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2712#true} is VALID [2022-04-14 15:14:26,876 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2712#true} {2712#true} #77#return; {2712#true} is VALID [2022-04-14 15:14:26,877 INFO L290 TraceCheckUtils]: 9: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:26,877 INFO L290 TraceCheckUtils]: 8: Hoare triple {2712#true} assume !(0 == ~cond); {2712#true} is VALID [2022-04-14 15:14:26,877 INFO L290 TraceCheckUtils]: 7: Hoare triple {2712#true} ~cond := #in~cond; {2712#true} is VALID [2022-04-14 15:14:26,877 INFO L272 TraceCheckUtils]: 6: Hoare triple {2712#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2712#true} is VALID [2022-04-14 15:14:26,877 INFO L290 TraceCheckUtils]: 5: Hoare triple {2712#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2712#true} is VALID [2022-04-14 15:14:26,877 INFO L272 TraceCheckUtils]: 4: Hoare triple {2712#true} call #t~ret8 := main(); {2712#true} is VALID [2022-04-14 15:14:26,877 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2712#true} {2712#true} #93#return; {2712#true} is VALID [2022-04-14 15:14:26,877 INFO L290 TraceCheckUtils]: 2: Hoare triple {2712#true} assume true; {2712#true} is VALID [2022-04-14 15:14:26,877 INFO L290 TraceCheckUtils]: 1: Hoare triple {2712#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2712#true} is VALID [2022-04-14 15:14:26,878 INFO L272 TraceCheckUtils]: 0: Hoare triple {2712#true} call ULTIMATE.init(); {2712#true} is VALID [2022-04-14 15:14:26,878 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-14 15:14:26,878 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:26,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2039214911] [2022-04-14 15:14:26,878 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:26,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [379152688] [2022-04-14 15:14:26,878 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [379152688] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 15:14:26,878 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 15:14:26,879 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-14 15:14:26,879 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [866355458] [2022-04-14 15:14:26,879 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 15:14:26,879 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) Word has length 47 [2022-04-14 15:14:26,880 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:26,880 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-14 15:14:26,912 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:26,912 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 15:14:26,912 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:26,912 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 15:14:26,912 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-14 15:14:26,913 INFO L87 Difference]: Start difference. First operand 82 states and 105 transitions. Second operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-14 15:14:27,307 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:27,307 INFO L93 Difference]: Finished difference Result 88 states and 110 transitions. [2022-04-14 15:14:27,307 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 15:14:27,307 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) Word has length 47 [2022-04-14 15:14:27,307 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:27,308 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-14 15:14:27,309 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 15:14:27,309 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-14 15:14:27,310 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 15:14:27,310 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-14 15:14:27,353 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:27,355 INFO L225 Difference]: With dead ends: 88 [2022-04-14 15:14:27,355 INFO L226 Difference]: Without dead ends: 86 [2022-04-14 15:14:27,356 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 84 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-14 15:14:27,356 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 32 mSDsluCounter, 106 mSDsCounter, 0 mSdLazyCounter, 124 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 133 SdHoareTripleChecker+Invalid, 140 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 124 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:27,356 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 133 Invalid, 140 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 124 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 15:14:27,357 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-14 15:14:27,401 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 86. [2022-04-14 15:14:27,401 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:27,402 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:27,402 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:27,403 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:27,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:27,408 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-14 15:14:27,409 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-14 15:14:27,409 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:27,409 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:27,413 INFO L74 IsIncluded]: Start isIncluded. First operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 86 states. [2022-04-14 15:14:27,414 INFO L87 Difference]: Start difference. First operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 86 states. [2022-04-14 15:14:27,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:27,417 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-14 15:14:27,418 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-14 15:14:27,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:27,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:27,418 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:27,418 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:27,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 86 states, 53 states have (on average 1.2075471698113207) internal successors, (64), 55 states have internal predecessors, (64), 23 states have call successors, (23), 10 states have call predecessors, (23), 9 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-14 15:14:27,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 108 transitions. [2022-04-14 15:14:27,427 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 108 transitions. Word has length 47 [2022-04-14 15:14:27,427 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:27,427 INFO L478 AbstractCegarLoop]: Abstraction has 86 states and 108 transitions. [2022-04-14 15:14:27,428 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 3 states have call predecessors, (10), 3 states have call successors, (10) [2022-04-14 15:14:27,428 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-14 15:14:27,429 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-14 15:14:27,429 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:27,429 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:27,452 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-14 15:14:27,643 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:27,643 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:27,644 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:27,644 INFO L85 PathProgramCache]: Analyzing trace with hash -589126939, now seen corresponding path program 1 times [2022-04-14 15:14:27,644 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:27,644 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [435290950] [2022-04-14 15:14:27,644 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:27,644 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:27,658 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:27,658 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1895096205] [2022-04-14 15:14:27,658 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:27,658 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:27,659 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:27,659 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:14:27,660 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-14 15:14:27,705 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:27,706 INFO L263 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 15:14:27,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:27,717 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:27,984 INFO L272 TraceCheckUtils]: 0: Hoare triple {3435#true} call ULTIMATE.init(); {3435#true} is VALID [2022-04-14 15:14:27,985 INFO L290 TraceCheckUtils]: 1: Hoare triple {3435#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:27,985 INFO L290 TraceCheckUtils]: 2: Hoare triple {3443#(<= ~counter~0 0)} assume true; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:27,986 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3443#(<= ~counter~0 0)} {3435#true} #93#return; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:27,987 INFO L272 TraceCheckUtils]: 4: Hoare triple {3443#(<= ~counter~0 0)} call #t~ret8 := main(); {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:27,987 INFO L290 TraceCheckUtils]: 5: Hoare triple {3443#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:27,988 INFO L272 TraceCheckUtils]: 6: Hoare triple {3443#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:27,988 INFO L290 TraceCheckUtils]: 7: Hoare triple {3443#(<= ~counter~0 0)} ~cond := #in~cond; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:27,989 INFO L290 TraceCheckUtils]: 8: Hoare triple {3443#(<= ~counter~0 0)} assume !(0 == ~cond); {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:27,989 INFO L290 TraceCheckUtils]: 9: Hoare triple {3443#(<= ~counter~0 0)} assume true; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:27,989 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3443#(<= ~counter~0 0)} {3443#(<= ~counter~0 0)} #77#return; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:27,990 INFO L290 TraceCheckUtils]: 11: Hoare triple {3443#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3443#(<= ~counter~0 0)} is VALID [2022-04-14 15:14:27,990 INFO L290 TraceCheckUtils]: 12: Hoare triple {3443#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,991 INFO L290 TraceCheckUtils]: 13: Hoare triple {3477#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,991 INFO L272 TraceCheckUtils]: 14: Hoare triple {3477#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,993 INFO L290 TraceCheckUtils]: 15: Hoare triple {3477#(<= ~counter~0 1)} ~cond := #in~cond; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,993 INFO L290 TraceCheckUtils]: 16: Hoare triple {3477#(<= ~counter~0 1)} assume !(0 == ~cond); {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,993 INFO L290 TraceCheckUtils]: 17: Hoare triple {3477#(<= ~counter~0 1)} assume true; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,994 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3477#(<= ~counter~0 1)} {3477#(<= ~counter~0 1)} #79#return; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,994 INFO L272 TraceCheckUtils]: 19: Hoare triple {3477#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,995 INFO L290 TraceCheckUtils]: 20: Hoare triple {3477#(<= ~counter~0 1)} ~cond := #in~cond; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,995 INFO L290 TraceCheckUtils]: 21: Hoare triple {3477#(<= ~counter~0 1)} assume !(0 == ~cond); {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,996 INFO L290 TraceCheckUtils]: 22: Hoare triple {3477#(<= ~counter~0 1)} assume true; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,997 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3477#(<= ~counter~0 1)} {3477#(<= ~counter~0 1)} #81#return; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,997 INFO L290 TraceCheckUtils]: 24: Hoare triple {3477#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3477#(<= ~counter~0 1)} is VALID [2022-04-14 15:14:27,998 INFO L290 TraceCheckUtils]: 25: Hoare triple {3477#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:27,998 INFO L290 TraceCheckUtils]: 26: Hoare triple {3517#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:27,999 INFO L272 TraceCheckUtils]: 27: Hoare triple {3517#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:27,999 INFO L290 TraceCheckUtils]: 28: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:27,999 INFO L290 TraceCheckUtils]: 29: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,000 INFO L290 TraceCheckUtils]: 30: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,000 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #83#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,001 INFO L272 TraceCheckUtils]: 32: Hoare triple {3517#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,001 INFO L290 TraceCheckUtils]: 33: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,002 INFO L290 TraceCheckUtils]: 34: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,002 INFO L290 TraceCheckUtils]: 35: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,003 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #85#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,003 INFO L272 TraceCheckUtils]: 37: Hoare triple {3517#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,004 INFO L290 TraceCheckUtils]: 38: Hoare triple {3517#(<= ~counter~0 2)} ~cond := #in~cond; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,004 INFO L290 TraceCheckUtils]: 39: Hoare triple {3517#(<= ~counter~0 2)} assume !(0 == ~cond); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,004 INFO L290 TraceCheckUtils]: 40: Hoare triple {3517#(<= ~counter~0 2)} assume true; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,005 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3517#(<= ~counter~0 2)} {3517#(<= ~counter~0 2)} #87#return; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,005 INFO L290 TraceCheckUtils]: 42: Hoare triple {3517#(<= ~counter~0 2)} assume !(~r~0 >= 2 * ~b~0); {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,006 INFO L290 TraceCheckUtils]: 43: Hoare triple {3517#(<= ~counter~0 2)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {3517#(<= ~counter~0 2)} is VALID [2022-04-14 15:14:28,006 INFO L290 TraceCheckUtils]: 44: Hoare triple {3517#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3575#(<= |main_#t~post6| 2)} is VALID [2022-04-14 15:14:28,006 INFO L290 TraceCheckUtils]: 45: Hoare triple {3575#(<= |main_#t~post6| 2)} assume !(#t~post6 < 20);havoc #t~post6; {3436#false} is VALID [2022-04-14 15:14:28,007 INFO L272 TraceCheckUtils]: 46: Hoare triple {3436#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3436#false} is VALID [2022-04-14 15:14:28,007 INFO L290 TraceCheckUtils]: 47: Hoare triple {3436#false} ~cond := #in~cond; {3436#false} is VALID [2022-04-14 15:14:28,007 INFO L290 TraceCheckUtils]: 48: Hoare triple {3436#false} assume 0 == ~cond; {3436#false} is VALID [2022-04-14 15:14:28,007 INFO L290 TraceCheckUtils]: 49: Hoare triple {3436#false} assume !false; {3436#false} is VALID [2022-04-14 15:14:28,007 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 10 proven. 26 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-14 15:14:28,007 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:14:28,259 INFO L290 TraceCheckUtils]: 49: Hoare triple {3436#false} assume !false; {3436#false} is VALID [2022-04-14 15:14:28,259 INFO L290 TraceCheckUtils]: 48: Hoare triple {3436#false} assume 0 == ~cond; {3436#false} is VALID [2022-04-14 15:14:28,259 INFO L290 TraceCheckUtils]: 47: Hoare triple {3436#false} ~cond := #in~cond; {3436#false} is VALID [2022-04-14 15:14:28,260 INFO L272 TraceCheckUtils]: 46: Hoare triple {3436#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3436#false} is VALID [2022-04-14 15:14:28,260 INFO L290 TraceCheckUtils]: 45: Hoare triple {3603#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {3436#false} is VALID [2022-04-14 15:14:28,260 INFO L290 TraceCheckUtils]: 44: Hoare triple {3607#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3603#(< |main_#t~post6| 20)} is VALID [2022-04-14 15:14:28,261 INFO L290 TraceCheckUtils]: 43: Hoare triple {3607#(< ~counter~0 20)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {3607#(< ~counter~0 20)} is VALID [2022-04-14 15:14:28,261 INFO L290 TraceCheckUtils]: 42: Hoare triple {3607#(< ~counter~0 20)} assume !(~r~0 >= 2 * ~b~0); {3607#(< ~counter~0 20)} is VALID [2022-04-14 15:14:28,262 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3435#true} {3607#(< ~counter~0 20)} #87#return; {3607#(< ~counter~0 20)} is VALID [2022-04-14 15:14:28,262 INFO L290 TraceCheckUtils]: 40: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:14:28,262 INFO L290 TraceCheckUtils]: 39: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:14:28,262 INFO L290 TraceCheckUtils]: 38: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:14:28,262 INFO L272 TraceCheckUtils]: 37: Hoare triple {3607#(< ~counter~0 20)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:14:28,263 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3435#true} {3607#(< ~counter~0 20)} #85#return; {3607#(< ~counter~0 20)} is VALID [2022-04-14 15:14:28,263 INFO L290 TraceCheckUtils]: 35: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:14:28,263 INFO L290 TraceCheckUtils]: 34: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:14:28,263 INFO L290 TraceCheckUtils]: 33: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:14:28,263 INFO L272 TraceCheckUtils]: 32: Hoare triple {3607#(< ~counter~0 20)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:14:28,264 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3435#true} {3607#(< ~counter~0 20)} #83#return; {3607#(< ~counter~0 20)} is VALID [2022-04-14 15:14:28,264 INFO L290 TraceCheckUtils]: 30: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:14:28,264 INFO L290 TraceCheckUtils]: 29: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:14:28,264 INFO L290 TraceCheckUtils]: 28: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:14:28,265 INFO L272 TraceCheckUtils]: 27: Hoare triple {3607#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:14:28,265 INFO L290 TraceCheckUtils]: 26: Hoare triple {3607#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {3607#(< ~counter~0 20)} is VALID [2022-04-14 15:14:28,266 INFO L290 TraceCheckUtils]: 25: Hoare triple {3665#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3607#(< ~counter~0 20)} is VALID [2022-04-14 15:14:28,266 INFO L290 TraceCheckUtils]: 24: Hoare triple {3665#(< ~counter~0 19)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3665#(< ~counter~0 19)} is VALID [2022-04-14 15:14:28,267 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3435#true} {3665#(< ~counter~0 19)} #81#return; {3665#(< ~counter~0 19)} is VALID [2022-04-14 15:14:28,267 INFO L290 TraceCheckUtils]: 22: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:14:28,277 INFO L290 TraceCheckUtils]: 21: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:14:28,277 INFO L290 TraceCheckUtils]: 20: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:14:28,277 INFO L272 TraceCheckUtils]: 19: Hoare triple {3665#(< ~counter~0 19)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:14:28,278 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3435#true} {3665#(< ~counter~0 19)} #79#return; {3665#(< ~counter~0 19)} is VALID [2022-04-14 15:14:28,278 INFO L290 TraceCheckUtils]: 17: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:14:28,278 INFO L290 TraceCheckUtils]: 16: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:14:28,278 INFO L290 TraceCheckUtils]: 15: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:14:28,279 INFO L272 TraceCheckUtils]: 14: Hoare triple {3665#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:14:28,279 INFO L290 TraceCheckUtils]: 13: Hoare triple {3665#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {3665#(< ~counter~0 19)} is VALID [2022-04-14 15:14:28,280 INFO L290 TraceCheckUtils]: 12: Hoare triple {3705#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3665#(< ~counter~0 19)} is VALID [2022-04-14 15:14:28,280 INFO L290 TraceCheckUtils]: 11: Hoare triple {3705#(< ~counter~0 18)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3705#(< ~counter~0 18)} is VALID [2022-04-14 15:14:28,281 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3435#true} {3705#(< ~counter~0 18)} #77#return; {3705#(< ~counter~0 18)} is VALID [2022-04-14 15:14:28,281 INFO L290 TraceCheckUtils]: 9: Hoare triple {3435#true} assume true; {3435#true} is VALID [2022-04-14 15:14:28,281 INFO L290 TraceCheckUtils]: 8: Hoare triple {3435#true} assume !(0 == ~cond); {3435#true} is VALID [2022-04-14 15:14:28,281 INFO L290 TraceCheckUtils]: 7: Hoare triple {3435#true} ~cond := #in~cond; {3435#true} is VALID [2022-04-14 15:14:28,281 INFO L272 TraceCheckUtils]: 6: Hoare triple {3705#(< ~counter~0 18)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3435#true} is VALID [2022-04-14 15:14:28,282 INFO L290 TraceCheckUtils]: 5: Hoare triple {3705#(< ~counter~0 18)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3705#(< ~counter~0 18)} is VALID [2022-04-14 15:14:28,282 INFO L272 TraceCheckUtils]: 4: Hoare triple {3705#(< ~counter~0 18)} call #t~ret8 := main(); {3705#(< ~counter~0 18)} is VALID [2022-04-14 15:14:28,283 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3705#(< ~counter~0 18)} {3435#true} #93#return; {3705#(< ~counter~0 18)} is VALID [2022-04-14 15:14:28,283 INFO L290 TraceCheckUtils]: 2: Hoare triple {3705#(< ~counter~0 18)} assume true; {3705#(< ~counter~0 18)} is VALID [2022-04-14 15:14:28,284 INFO L290 TraceCheckUtils]: 1: Hoare triple {3435#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3705#(< ~counter~0 18)} is VALID [2022-04-14 15:14:28,284 INFO L272 TraceCheckUtils]: 0: Hoare triple {3435#true} call ULTIMATE.init(); {3435#true} is VALID [2022-04-14 15:14:28,284 INFO L134 CoverageAnalysis]: Checked inductivity of 52 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-14 15:14:28,284 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:14:28,284 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [435290950] [2022-04-14 15:14:28,284 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:14:28,284 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1895096205] [2022-04-14 15:14:28,285 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1895096205] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 15:14:28,285 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 15:14:28,285 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-14 15:14:28,285 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1423870838] [2022-04-14 15:14:28,285 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 15:14:28,286 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) Word has length 50 [2022-04-14 15:14:28,286 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:14:28,286 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-14 15:14:28,351 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:28,352 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 15:14:28,352 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:14:28,352 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 15:14:28,352 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-14 15:14:28,353 INFO L87 Difference]: Start difference. First operand 86 states and 108 transitions. Second operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-14 15:14:28,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:28,925 INFO L93 Difference]: Finished difference Result 257 states and 311 transitions. [2022-04-14 15:14:28,925 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-14 15:14:28,925 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) Word has length 50 [2022-04-14 15:14:28,926 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:14:28,926 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-14 15:14:28,929 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 169 transitions. [2022-04-14 15:14:28,929 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-14 15:14:28,932 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 169 transitions. [2022-04-14 15:14:28,932 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 169 transitions. [2022-04-14 15:14:29,061 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 169 edges. 169 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:14:29,067 INFO L225 Difference]: With dead ends: 257 [2022-04-14 15:14:29,068 INFO L226 Difference]: Without dead ends: 250 [2022-04-14 15:14:29,068 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 91 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=64, Invalid=118, Unknown=0, NotChecked=0, Total=182 [2022-04-14 15:14:29,069 INFO L913 BasicCegarLoop]: 63 mSDtfsCounter, 96 mSDsluCounter, 170 mSDsCounter, 0 mSdLazyCounter, 101 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 96 SdHoareTripleChecker+Valid, 233 SdHoareTripleChecker+Invalid, 134 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 101 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 15:14:29,069 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [96 Valid, 233 Invalid, 134 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 101 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 15:14:29,069 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 250 states. [2022-04-14 15:14:29,179 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 250 to 239. [2022-04-14 15:14:29,179 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:14:29,180 INFO L82 GeneralOperation]: Start isEquivalent. First operand 250 states. Second operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-14 15:14:29,181 INFO L74 IsIncluded]: Start isIncluded. First operand 250 states. Second operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-14 15:14:29,181 INFO L87 Difference]: Start difference. First operand 250 states. Second operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-14 15:14:29,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:29,189 INFO L93 Difference]: Finished difference Result 250 states and 299 transitions. [2022-04-14 15:14:29,189 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 299 transitions. [2022-04-14 15:14:29,190 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:29,190 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:29,191 INFO L74 IsIncluded]: Start isIncluded. First operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) Second operand 250 states. [2022-04-14 15:14:29,191 INFO L87 Difference]: Start difference. First operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) Second operand 250 states. [2022-04-14 15:14:29,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:14:29,198 INFO L93 Difference]: Finished difference Result 250 states and 299 transitions. [2022-04-14 15:14:29,198 INFO L276 IsEmpty]: Start isEmpty. Operand 250 states and 299 transitions. [2022-04-14 15:14:29,199 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:14:29,199 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:14:29,199 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:14:29,199 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:14:29,200 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 239 states, 153 states have (on average 1.1895424836601307) internal successors, (182), 161 states have internal predecessors, (182), 57 states have call successors, (57), 29 states have call predecessors, (57), 28 states have return successors, (52), 48 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-14 15:14:29,206 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 239 states to 239 states and 291 transitions. [2022-04-14 15:14:29,207 INFO L78 Accepts]: Start accepts. Automaton has 239 states and 291 transitions. Word has length 50 [2022-04-14 15:14:29,207 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:14:29,207 INFO L478 AbstractCegarLoop]: Abstraction has 239 states and 291 transitions. [2022-04-14 15:14:29,207 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 10 states have internal predecessors, (44), 8 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-14 15:14:29,207 INFO L276 IsEmpty]: Start isEmpty. Operand 239 states and 291 transitions. [2022-04-14 15:14:29,208 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-14 15:14:29,208 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:14:29,208 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:14:29,232 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-14 15:14:29,430 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-14 15:14:29,430 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:14:29,431 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:14:29,431 INFO L85 PathProgramCache]: Analyzing trace with hash -484699953, now seen corresponding path program 1 times [2022-04-14 15:14:29,431 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:14:29,431 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1442521979] [2022-04-14 15:14:29,431 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:29,431 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:14:29,443 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:14:29,443 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [948943268] [2022-04-14 15:14:29,443 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:14:29,443 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:14:29,443 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:14:29,444 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:14:29,462 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-14 15:14:29,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:29,490 INFO L263 TraceCheckSpWp]: Trace formula consists of 160 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-14 15:14:29,500 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:14:29,501 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:14:30,073 INFO L272 TraceCheckUtils]: 0: Hoare triple {4963#true} call ULTIMATE.init(); {4963#true} is VALID [2022-04-14 15:14:30,073 INFO L290 TraceCheckUtils]: 1: Hoare triple {4963#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4963#true} is VALID [2022-04-14 15:14:30,073 INFO L290 TraceCheckUtils]: 2: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-14 15:14:30,074 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4963#true} {4963#true} #93#return; {4963#true} is VALID [2022-04-14 15:14:30,074 INFO L272 TraceCheckUtils]: 4: Hoare triple {4963#true} call #t~ret8 := main(); {4963#true} is VALID [2022-04-14 15:14:30,074 INFO L290 TraceCheckUtils]: 5: Hoare triple {4963#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4963#true} is VALID [2022-04-14 15:14:30,074 INFO L272 TraceCheckUtils]: 6: Hoare triple {4963#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4963#true} is VALID [2022-04-14 15:14:30,074 INFO L290 TraceCheckUtils]: 7: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-14 15:14:30,074 INFO L290 TraceCheckUtils]: 8: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-14 15:14:30,074 INFO L290 TraceCheckUtils]: 9: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-14 15:14:30,074 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4963#true} {4963#true} #77#return; {4963#true} is VALID [2022-04-14 15:14:30,075 INFO L290 TraceCheckUtils]: 11: Hoare triple {4963#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,075 INFO L290 TraceCheckUtils]: 12: Hoare triple {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,075 INFO L290 TraceCheckUtils]: 13: Hoare triple {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,075 INFO L272 TraceCheckUtils]: 14: Hoare triple {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4963#true} is VALID [2022-04-14 15:14:30,076 INFO L290 TraceCheckUtils]: 15: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-14 15:14:30,076 INFO L290 TraceCheckUtils]: 16: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-14 15:14:30,076 INFO L290 TraceCheckUtils]: 17: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-14 15:14:30,080 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4963#true} {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,080 INFO L272 TraceCheckUtils]: 19: Hoare triple {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4963#true} is VALID [2022-04-14 15:14:30,080 INFO L290 TraceCheckUtils]: 20: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-14 15:14:30,080 INFO L290 TraceCheckUtils]: 21: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-14 15:14:30,080 INFO L290 TraceCheckUtils]: 22: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-14 15:14:30,080 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4963#true} {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,081 INFO L290 TraceCheckUtils]: 24: Hoare triple {5001#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,081 INFO L290 TraceCheckUtils]: 25: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,082 INFO L290 TraceCheckUtils]: 26: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,082 INFO L272 TraceCheckUtils]: 27: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4963#true} is VALID [2022-04-14 15:14:30,082 INFO L290 TraceCheckUtils]: 28: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-14 15:14:30,082 INFO L290 TraceCheckUtils]: 29: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-14 15:14:30,082 INFO L290 TraceCheckUtils]: 30: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-14 15:14:30,083 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4963#true} {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,083 INFO L272 TraceCheckUtils]: 32: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4963#true} is VALID [2022-04-14 15:14:30,083 INFO L290 TraceCheckUtils]: 33: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-14 15:14:30,083 INFO L290 TraceCheckUtils]: 34: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-14 15:14:30,083 INFO L290 TraceCheckUtils]: 35: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-14 15:14:30,084 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4963#true} {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,084 INFO L272 TraceCheckUtils]: 37: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {4963#true} is VALID [2022-04-14 15:14:30,084 INFO L290 TraceCheckUtils]: 38: Hoare triple {4963#true} ~cond := #in~cond; {4963#true} is VALID [2022-04-14 15:14:30,084 INFO L290 TraceCheckUtils]: 39: Hoare triple {4963#true} assume !(0 == ~cond); {4963#true} is VALID [2022-04-14 15:14:30,084 INFO L290 TraceCheckUtils]: 40: Hoare triple {4963#true} assume true; {4963#true} is VALID [2022-04-14 15:14:30,085 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4963#true} {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,085 INFO L290 TraceCheckUtils]: 42: Hoare triple {5041#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~r~0 >= 2 * ~b~0); {5096#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:14:30,086 INFO L290 TraceCheckUtils]: 43: Hoare triple {5096#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 15:14:30,087 INFO L290 TraceCheckUtils]: 44: Hoare triple {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 15:14:30,091 INFO L290 TraceCheckUtils]: 45: Hoare triple {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 15:14:30,091 INFO L272 TraceCheckUtils]: 46: Hoare triple {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4963#true} is VALID [2022-04-14 15:14:30,092 INFO L290 TraceCheckUtils]: 47: Hoare triple {4963#true} ~cond := #in~cond; {5113#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:30,092 INFO L290 TraceCheckUtils]: 48: Hoare triple {5113#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {5117#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:14:30,092 INFO L290 TraceCheckUtils]: 49: Hoare triple {5117#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {5117#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 15:14:30,094 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5117#(not (= |__VERIFIER_assert_#in~cond| 0))} {5100#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= main_~a~0 1) (not (<= (* main_~b~0 2) main_~x~0)) (= main_~b~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0) (<= main_~y~0 main_~x~0))} #79#return; {5124#(and (< main_~x~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 15:14:30,094 INFO L272 TraceCheckUtils]: 51: Hoare triple {5124#(and (< main_~x~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~y~0 main_~r~0)) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:14:30,095 INFO L290 TraceCheckUtils]: 52: Hoare triple {5128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:14:30,095 INFO L290 TraceCheckUtils]: 53: Hoare triple {5132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4964#false} is VALID [2022-04-14 15:14:30,095 INFO L290 TraceCheckUtils]: 54: Hoare triple {4964#false} assume !false; {4964#false} is VALID [2022-04-14 15:14:30,096 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 26 proven. 5 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-14 15:14:30,096 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:15:31,015 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:31,015 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1442521979] [2022-04-14 15:15:31,015 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:31,015 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [948943268] [2022-04-14 15:15:31,015 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [948943268] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-14 15:15:31,015 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-14 15:15:31,015 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-14 15:15:31,016 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [88911752] [2022-04-14 15:15:31,016 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-14 15:15:31,016 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 55 [2022-04-14 15:15:31,016 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:31,016 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-14 15:15:31,069 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:31,069 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-14 15:15:31,069 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:31,070 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-14 15:15:31,070 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=182, Unknown=0, NotChecked=0, Total=240 [2022-04-14 15:15:31,070 INFO L87 Difference]: Start difference. First operand 239 states and 291 transitions. Second operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-14 15:15:31,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:31,941 INFO L93 Difference]: Finished difference Result 318 states and 381 transitions. [2022-04-14 15:15:31,941 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-14 15:15:31,942 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 55 [2022-04-14 15:15:31,942 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:31,942 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-14 15:15:31,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 121 transitions. [2022-04-14 15:15:31,944 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-14 15:15:31,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 121 transitions. [2022-04-14 15:15:31,946 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 121 transitions. [2022-04-14 15:15:32,059 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:32,064 INFO L225 Difference]: With dead ends: 318 [2022-04-14 15:15:32,064 INFO L226 Difference]: Without dead ends: 203 [2022-04-14 15:15:32,067 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 70 SyntacticMatches, 2 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=235, Unknown=0, NotChecked=0, Total=306 [2022-04-14 15:15:32,067 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 24 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 269 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 183 SdHoareTripleChecker+Invalid, 283 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 269 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-14 15:15:32,068 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 183 Invalid, 283 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 269 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-14 15:15:32,069 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 203 states. [2022-04-14 15:15:32,169 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 203 to 202. [2022-04-14 15:15:32,169 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:32,170 INFO L82 GeneralOperation]: Start isEquivalent. First operand 203 states. Second operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-14 15:15:32,170 INFO L74 IsIncluded]: Start isIncluded. First operand 203 states. Second operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-14 15:15:32,171 INFO L87 Difference]: Start difference. First operand 203 states. Second operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-14 15:15:32,176 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:32,176 INFO L93 Difference]: Finished difference Result 203 states and 241 transitions. [2022-04-14 15:15:32,176 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 241 transitions. [2022-04-14 15:15:32,176 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:32,177 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:32,177 INFO L74 IsIncluded]: Start isIncluded. First operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) Second operand 203 states. [2022-04-14 15:15:32,177 INFO L87 Difference]: Start difference. First operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) Second operand 203 states. [2022-04-14 15:15:32,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:32,183 INFO L93 Difference]: Finished difference Result 203 states and 241 transitions. [2022-04-14 15:15:32,183 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 241 transitions. [2022-04-14 15:15:32,184 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:32,184 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:32,184 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:32,184 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:32,184 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 202 states, 130 states have (on average 1.1692307692307693) internal successors, (152), 136 states have internal predecessors, (152), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 39 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-14 15:15:32,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 202 states to 202 states and 240 transitions. [2022-04-14 15:15:32,190 INFO L78 Accepts]: Start accepts. Automaton has 202 states and 240 transitions. Word has length 55 [2022-04-14 15:15:32,190 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:32,190 INFO L478 AbstractCegarLoop]: Abstraction has 202 states and 240 transitions. [2022-04-14 15:15:32,190 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-14 15:15:32,190 INFO L276 IsEmpty]: Start isEmpty. Operand 202 states and 240 transitions. [2022-04-14 15:15:32,191 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-14 15:15:32,191 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:32,191 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:15:32,215 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-14 15:15:32,415 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-14 15:15:32,416 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:32,416 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:32,416 INFO L85 PathProgramCache]: Analyzing trace with hash 611309655, now seen corresponding path program 1 times [2022-04-14 15:15:32,416 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:32,416 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2021073871] [2022-04-14 15:15:32,416 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:32,416 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:32,430 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:32,431 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [759410703] [2022-04-14 15:15:32,431 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:32,431 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:32,431 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:32,437 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:15:32,440 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-14 15:15:32,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:32,487 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 15:15:32,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:32,500 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:32,742 INFO L272 TraceCheckUtils]: 0: Hoare triple {6391#true} call ULTIMATE.init(); {6391#true} is VALID [2022-04-14 15:15:32,742 INFO L290 TraceCheckUtils]: 1: Hoare triple {6391#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6399#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:32,743 INFO L290 TraceCheckUtils]: 2: Hoare triple {6399#(<= ~counter~0 0)} assume true; {6399#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:32,743 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6399#(<= ~counter~0 0)} {6391#true} #93#return; {6399#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:32,743 INFO L272 TraceCheckUtils]: 4: Hoare triple {6399#(<= ~counter~0 0)} call #t~ret8 := main(); {6399#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:32,744 INFO L290 TraceCheckUtils]: 5: Hoare triple {6399#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6399#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:32,745 INFO L272 TraceCheckUtils]: 6: Hoare triple {6399#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6399#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:32,745 INFO L290 TraceCheckUtils]: 7: Hoare triple {6399#(<= ~counter~0 0)} ~cond := #in~cond; {6399#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:32,745 INFO L290 TraceCheckUtils]: 8: Hoare triple {6399#(<= ~counter~0 0)} assume !(0 == ~cond); {6399#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:32,746 INFO L290 TraceCheckUtils]: 9: Hoare triple {6399#(<= ~counter~0 0)} assume true; {6399#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:32,746 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6399#(<= ~counter~0 0)} {6399#(<= ~counter~0 0)} #77#return; {6399#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:32,746 INFO L290 TraceCheckUtils]: 11: Hoare triple {6399#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {6399#(<= ~counter~0 0)} is VALID [2022-04-14 15:15:32,747 INFO L290 TraceCheckUtils]: 12: Hoare triple {6399#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,747 INFO L290 TraceCheckUtils]: 13: Hoare triple {6433#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,748 INFO L272 TraceCheckUtils]: 14: Hoare triple {6433#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,748 INFO L290 TraceCheckUtils]: 15: Hoare triple {6433#(<= ~counter~0 1)} ~cond := #in~cond; {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,748 INFO L290 TraceCheckUtils]: 16: Hoare triple {6433#(<= ~counter~0 1)} assume !(0 == ~cond); {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,748 INFO L290 TraceCheckUtils]: 17: Hoare triple {6433#(<= ~counter~0 1)} assume true; {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,749 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6433#(<= ~counter~0 1)} {6433#(<= ~counter~0 1)} #79#return; {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,749 INFO L272 TraceCheckUtils]: 19: Hoare triple {6433#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,750 INFO L290 TraceCheckUtils]: 20: Hoare triple {6433#(<= ~counter~0 1)} ~cond := #in~cond; {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,750 INFO L290 TraceCheckUtils]: 21: Hoare triple {6433#(<= ~counter~0 1)} assume !(0 == ~cond); {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,750 INFO L290 TraceCheckUtils]: 22: Hoare triple {6433#(<= ~counter~0 1)} assume true; {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,751 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6433#(<= ~counter~0 1)} {6433#(<= ~counter~0 1)} #81#return; {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,751 INFO L290 TraceCheckUtils]: 24: Hoare triple {6433#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6433#(<= ~counter~0 1)} is VALID [2022-04-14 15:15:32,752 INFO L290 TraceCheckUtils]: 25: Hoare triple {6433#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,752 INFO L290 TraceCheckUtils]: 26: Hoare triple {6473#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,752 INFO L272 TraceCheckUtils]: 27: Hoare triple {6473#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,755 INFO L290 TraceCheckUtils]: 28: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,755 INFO L290 TraceCheckUtils]: 29: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,756 INFO L290 TraceCheckUtils]: 30: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,756 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #83#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,757 INFO L272 TraceCheckUtils]: 32: Hoare triple {6473#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,757 INFO L290 TraceCheckUtils]: 33: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,758 INFO L290 TraceCheckUtils]: 34: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,758 INFO L290 TraceCheckUtils]: 35: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,759 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #85#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,759 INFO L272 TraceCheckUtils]: 37: Hoare triple {6473#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,760 INFO L290 TraceCheckUtils]: 38: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,760 INFO L290 TraceCheckUtils]: 39: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,760 INFO L290 TraceCheckUtils]: 40: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,761 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #87#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,761 INFO L290 TraceCheckUtils]: 42: Hoare triple {6473#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,762 INFO L272 TraceCheckUtils]: 43: Hoare triple {6473#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,762 INFO L290 TraceCheckUtils]: 44: Hoare triple {6473#(<= ~counter~0 2)} ~cond := #in~cond; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,763 INFO L290 TraceCheckUtils]: 45: Hoare triple {6473#(<= ~counter~0 2)} assume !(0 == ~cond); {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,763 INFO L290 TraceCheckUtils]: 46: Hoare triple {6473#(<= ~counter~0 2)} assume true; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,764 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6473#(<= ~counter~0 2)} {6473#(<= ~counter~0 2)} #89#return; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,764 INFO L290 TraceCheckUtils]: 48: Hoare triple {6473#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6473#(<= ~counter~0 2)} is VALID [2022-04-14 15:15:32,765 INFO L290 TraceCheckUtils]: 49: Hoare triple {6473#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6546#(<= |main_#t~post7| 2)} is VALID [2022-04-14 15:15:32,765 INFO L290 TraceCheckUtils]: 50: Hoare triple {6546#(<= |main_#t~post7| 2)} assume !(#t~post7 < 20);havoc #t~post7; {6392#false} is VALID [2022-04-14 15:15:32,765 INFO L290 TraceCheckUtils]: 51: Hoare triple {6392#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {6392#false} is VALID [2022-04-14 15:15:32,765 INFO L290 TraceCheckUtils]: 52: Hoare triple {6392#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6392#false} is VALID [2022-04-14 15:15:32,766 INFO L290 TraceCheckUtils]: 53: Hoare triple {6392#false} assume !!(#t~post6 < 20);havoc #t~post6; {6392#false} is VALID [2022-04-14 15:15:32,766 INFO L272 TraceCheckUtils]: 54: Hoare triple {6392#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6392#false} is VALID [2022-04-14 15:15:32,766 INFO L290 TraceCheckUtils]: 55: Hoare triple {6392#false} ~cond := #in~cond; {6392#false} is VALID [2022-04-14 15:15:32,766 INFO L290 TraceCheckUtils]: 56: Hoare triple {6392#false} assume !(0 == ~cond); {6392#false} is VALID [2022-04-14 15:15:32,766 INFO L290 TraceCheckUtils]: 57: Hoare triple {6392#false} assume true; {6392#false} is VALID [2022-04-14 15:15:32,766 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {6392#false} {6392#false} #79#return; {6392#false} is VALID [2022-04-14 15:15:32,766 INFO L272 TraceCheckUtils]: 59: Hoare triple {6392#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6392#false} is VALID [2022-04-14 15:15:32,766 INFO L290 TraceCheckUtils]: 60: Hoare triple {6392#false} ~cond := #in~cond; {6392#false} is VALID [2022-04-14 15:15:32,766 INFO L290 TraceCheckUtils]: 61: Hoare triple {6392#false} assume 0 == ~cond; {6392#false} is VALID [2022-04-14 15:15:32,767 INFO L290 TraceCheckUtils]: 62: Hoare triple {6392#false} assume !false; {6392#false} is VALID [2022-04-14 15:15:32,767 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 40 proven. 34 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-14 15:15:32,767 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:15:33,074 INFO L290 TraceCheckUtils]: 62: Hoare triple {6392#false} assume !false; {6392#false} is VALID [2022-04-14 15:15:33,075 INFO L290 TraceCheckUtils]: 61: Hoare triple {6392#false} assume 0 == ~cond; {6392#false} is VALID [2022-04-14 15:15:33,075 INFO L290 TraceCheckUtils]: 60: Hoare triple {6392#false} ~cond := #in~cond; {6392#false} is VALID [2022-04-14 15:15:33,075 INFO L272 TraceCheckUtils]: 59: Hoare triple {6392#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6392#false} is VALID [2022-04-14 15:15:33,075 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {6391#true} {6392#false} #79#return; {6392#false} is VALID [2022-04-14 15:15:33,075 INFO L290 TraceCheckUtils]: 57: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-14 15:15:33,075 INFO L290 TraceCheckUtils]: 56: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-14 15:15:33,075 INFO L290 TraceCheckUtils]: 55: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-14 15:15:33,075 INFO L272 TraceCheckUtils]: 54: Hoare triple {6392#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6391#true} is VALID [2022-04-14 15:15:33,076 INFO L290 TraceCheckUtils]: 53: Hoare triple {6392#false} assume !!(#t~post6 < 20);havoc #t~post6; {6392#false} is VALID [2022-04-14 15:15:33,076 INFO L290 TraceCheckUtils]: 52: Hoare triple {6392#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6392#false} is VALID [2022-04-14 15:15:33,076 INFO L290 TraceCheckUtils]: 51: Hoare triple {6392#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {6392#false} is VALID [2022-04-14 15:15:33,083 INFO L290 TraceCheckUtils]: 50: Hoare triple {6622#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {6392#false} is VALID [2022-04-14 15:15:33,084 INFO L290 TraceCheckUtils]: 49: Hoare triple {6626#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6622#(< |main_#t~post7| 20)} is VALID [2022-04-14 15:15:33,084 INFO L290 TraceCheckUtils]: 48: Hoare triple {6626#(< ~counter~0 20)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6626#(< ~counter~0 20)} is VALID [2022-04-14 15:15:33,085 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6391#true} {6626#(< ~counter~0 20)} #89#return; {6626#(< ~counter~0 20)} is VALID [2022-04-14 15:15:33,085 INFO L290 TraceCheckUtils]: 46: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-14 15:15:33,085 INFO L290 TraceCheckUtils]: 45: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-14 15:15:33,085 INFO L290 TraceCheckUtils]: 44: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-14 15:15:33,085 INFO L272 TraceCheckUtils]: 43: Hoare triple {6626#(< ~counter~0 20)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6391#true} is VALID [2022-04-14 15:15:33,085 INFO L290 TraceCheckUtils]: 42: Hoare triple {6626#(< ~counter~0 20)} assume !!(~r~0 >= 2 * ~b~0); {6626#(< ~counter~0 20)} is VALID [2022-04-14 15:15:33,086 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6391#true} {6626#(< ~counter~0 20)} #87#return; {6626#(< ~counter~0 20)} is VALID [2022-04-14 15:15:33,086 INFO L290 TraceCheckUtils]: 40: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-14 15:15:33,086 INFO L290 TraceCheckUtils]: 39: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-14 15:15:33,086 INFO L290 TraceCheckUtils]: 38: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-14 15:15:33,086 INFO L272 TraceCheckUtils]: 37: Hoare triple {6626#(< ~counter~0 20)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6391#true} is VALID [2022-04-14 15:15:33,087 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6391#true} {6626#(< ~counter~0 20)} #85#return; {6626#(< ~counter~0 20)} is VALID [2022-04-14 15:15:33,087 INFO L290 TraceCheckUtils]: 35: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-14 15:15:33,087 INFO L290 TraceCheckUtils]: 34: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-14 15:15:33,087 INFO L290 TraceCheckUtils]: 33: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-14 15:15:33,087 INFO L272 TraceCheckUtils]: 32: Hoare triple {6626#(< ~counter~0 20)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6391#true} is VALID [2022-04-14 15:15:33,088 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6391#true} {6626#(< ~counter~0 20)} #83#return; {6626#(< ~counter~0 20)} is VALID [2022-04-14 15:15:33,088 INFO L290 TraceCheckUtils]: 30: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-14 15:15:33,088 INFO L290 TraceCheckUtils]: 29: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-14 15:15:33,088 INFO L290 TraceCheckUtils]: 28: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-14 15:15:33,088 INFO L272 TraceCheckUtils]: 27: Hoare triple {6626#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6391#true} is VALID [2022-04-14 15:15:33,089 INFO L290 TraceCheckUtils]: 26: Hoare triple {6626#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {6626#(< ~counter~0 20)} is VALID [2022-04-14 15:15:33,089 INFO L290 TraceCheckUtils]: 25: Hoare triple {6699#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6626#(< ~counter~0 20)} is VALID [2022-04-14 15:15:33,090 INFO L290 TraceCheckUtils]: 24: Hoare triple {6699#(< ~counter~0 19)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6699#(< ~counter~0 19)} is VALID [2022-04-14 15:15:33,090 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6391#true} {6699#(< ~counter~0 19)} #81#return; {6699#(< ~counter~0 19)} is VALID [2022-04-14 15:15:33,090 INFO L290 TraceCheckUtils]: 22: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-14 15:15:33,091 INFO L290 TraceCheckUtils]: 21: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-14 15:15:33,091 INFO L290 TraceCheckUtils]: 20: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-14 15:15:33,091 INFO L272 TraceCheckUtils]: 19: Hoare triple {6699#(< ~counter~0 19)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6391#true} is VALID [2022-04-14 15:15:33,091 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6391#true} {6699#(< ~counter~0 19)} #79#return; {6699#(< ~counter~0 19)} is VALID [2022-04-14 15:15:33,091 INFO L290 TraceCheckUtils]: 17: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-14 15:15:33,092 INFO L290 TraceCheckUtils]: 16: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-14 15:15:33,092 INFO L290 TraceCheckUtils]: 15: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-14 15:15:33,092 INFO L272 TraceCheckUtils]: 14: Hoare triple {6699#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6391#true} is VALID [2022-04-14 15:15:33,092 INFO L290 TraceCheckUtils]: 13: Hoare triple {6699#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {6699#(< ~counter~0 19)} is VALID [2022-04-14 15:15:33,093 INFO L290 TraceCheckUtils]: 12: Hoare triple {6739#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6699#(< ~counter~0 19)} is VALID [2022-04-14 15:15:33,093 INFO L290 TraceCheckUtils]: 11: Hoare triple {6739#(< ~counter~0 18)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {6739#(< ~counter~0 18)} is VALID [2022-04-14 15:15:33,093 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6391#true} {6739#(< ~counter~0 18)} #77#return; {6739#(< ~counter~0 18)} is VALID [2022-04-14 15:15:33,094 INFO L290 TraceCheckUtils]: 9: Hoare triple {6391#true} assume true; {6391#true} is VALID [2022-04-14 15:15:33,094 INFO L290 TraceCheckUtils]: 8: Hoare triple {6391#true} assume !(0 == ~cond); {6391#true} is VALID [2022-04-14 15:15:33,094 INFO L290 TraceCheckUtils]: 7: Hoare triple {6391#true} ~cond := #in~cond; {6391#true} is VALID [2022-04-14 15:15:33,094 INFO L272 TraceCheckUtils]: 6: Hoare triple {6739#(< ~counter~0 18)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6391#true} is VALID [2022-04-14 15:15:33,094 INFO L290 TraceCheckUtils]: 5: Hoare triple {6739#(< ~counter~0 18)} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6739#(< ~counter~0 18)} is VALID [2022-04-14 15:15:33,095 INFO L272 TraceCheckUtils]: 4: Hoare triple {6739#(< ~counter~0 18)} call #t~ret8 := main(); {6739#(< ~counter~0 18)} is VALID [2022-04-14 15:15:33,095 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6739#(< ~counter~0 18)} {6391#true} #93#return; {6739#(< ~counter~0 18)} is VALID [2022-04-14 15:15:33,095 INFO L290 TraceCheckUtils]: 2: Hoare triple {6739#(< ~counter~0 18)} assume true; {6739#(< ~counter~0 18)} is VALID [2022-04-14 15:15:33,096 INFO L290 TraceCheckUtils]: 1: Hoare triple {6391#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6739#(< ~counter~0 18)} is VALID [2022-04-14 15:15:33,096 INFO L272 TraceCheckUtils]: 0: Hoare triple {6391#true} call ULTIMATE.init(); {6391#true} is VALID [2022-04-14 15:15:33,097 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 18 proven. 2 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-14 15:15:33,097 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:33,097 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2021073871] [2022-04-14 15:15:33,097 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:33,097 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [759410703] [2022-04-14 15:15:33,097 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [759410703] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 15:15:33,097 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 15:15:33,097 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-14 15:15:33,098 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [493250433] [2022-04-14 15:15:33,098 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 15:15:33,098 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) Word has length 63 [2022-04-14 15:15:33,099 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:33,099 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-14 15:15:33,164 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:33,164 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 15:15:33,165 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:33,165 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 15:15:33,165 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-14 15:15:33,165 INFO L87 Difference]: Start difference. First operand 202 states and 240 transitions. Second operand has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-14 15:15:33,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:33,741 INFO L93 Difference]: Finished difference Result 308 states and 368 transitions. [2022-04-14 15:15:33,741 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-14 15:15:33,742 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) Word has length 63 [2022-04-14 15:15:33,742 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:33,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-14 15:15:33,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 177 transitions. [2022-04-14 15:15:33,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-14 15:15:33,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 177 transitions. [2022-04-14 15:15:33,748 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 177 transitions. [2022-04-14 15:15:33,891 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 177 edges. 177 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:33,895 INFO L225 Difference]: With dead ends: 308 [2022-04-14 15:15:33,895 INFO L226 Difference]: Without dead ends: 214 [2022-04-14 15:15:33,896 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 129 GetRequests, 117 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=63, Invalid=119, Unknown=0, NotChecked=0, Total=182 [2022-04-14 15:15:33,896 INFO L913 BasicCegarLoop]: 61 mSDtfsCounter, 85 mSDsluCounter, 219 mSDsCounter, 0 mSdLazyCounter, 110 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 85 SdHoareTripleChecker+Valid, 280 SdHoareTripleChecker+Invalid, 146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 110 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 15:15:33,897 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [85 Valid, 280 Invalid, 146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 110 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 15:15:33,897 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 214 states. [2022-04-14 15:15:34,002 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 214 to 210. [2022-04-14 15:15:34,002 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:34,003 INFO L82 GeneralOperation]: Start isEquivalent. First operand 214 states. Second operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-14 15:15:34,003 INFO L74 IsIncluded]: Start isIncluded. First operand 214 states. Second operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-14 15:15:34,004 INFO L87 Difference]: Start difference. First operand 214 states. Second operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-14 15:15:34,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:34,009 INFO L93 Difference]: Finished difference Result 214 states and 246 transitions. [2022-04-14 15:15:34,009 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 246 transitions. [2022-04-14 15:15:34,010 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:34,010 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:34,010 INFO L74 IsIncluded]: Start isIncluded. First operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) Second operand 214 states. [2022-04-14 15:15:34,011 INFO L87 Difference]: Start difference. First operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) Second operand 214 states. [2022-04-14 15:15:34,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:34,015 INFO L93 Difference]: Finished difference Result 214 states and 246 transitions. [2022-04-14 15:15:34,015 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 246 transitions. [2022-04-14 15:15:34,016 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:34,016 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:34,016 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:34,016 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:34,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 210 states, 138 states have (on average 1.1304347826086956) internal successors, (156), 142 states have internal predecessors, (156), 46 states have call successors, (46), 26 states have call predecessors, (46), 25 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-14 15:15:34,022 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 210 states to 210 states and 244 transitions. [2022-04-14 15:15:34,022 INFO L78 Accepts]: Start accepts. Automaton has 210 states and 244 transitions. Word has length 63 [2022-04-14 15:15:34,022 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:34,022 INFO L478 AbstractCegarLoop]: Abstraction has 210 states and 244 transitions. [2022-04-14 15:15:34,022 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.9) internal successors, (49), 10 states have internal predecessors, (49), 8 states have call successors, (20), 6 states have call predecessors, (20), 6 states have return successors, (18), 7 states have call predecessors, (18), 8 states have call successors, (18) [2022-04-14 15:15:34,022 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 244 transitions. [2022-04-14 15:15:34,023 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-14 15:15:34,023 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 15:15:34,023 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:15:34,046 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-14 15:15:34,236 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-14 15:15:34,237 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 15:15:34,237 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 15:15:34,237 INFO L85 PathProgramCache]: Analyzing trace with hash 1777426592, now seen corresponding path program 1 times [2022-04-14 15:15:34,237 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 15:15:34,237 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1658459299] [2022-04-14 15:15:34,237 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:34,237 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 15:15:34,249 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 15:15:34,249 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [855838562] [2022-04-14 15:15:34,249 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 15:15:34,249 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 15:15:34,249 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 15:15:34,251 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 15:15:34,265 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-14 15:15:34,308 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:34,309 INFO L263 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-14 15:15:34,321 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 15:15:34,324 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 15:15:34,754 INFO L272 TraceCheckUtils]: 0: Hoare triple {7952#true} call ULTIMATE.init(); {7952#true} is VALID [2022-04-14 15:15:34,755 INFO L290 TraceCheckUtils]: 1: Hoare triple {7952#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7952#true} is VALID [2022-04-14 15:15:34,755 INFO L290 TraceCheckUtils]: 2: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,755 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7952#true} {7952#true} #93#return; {7952#true} is VALID [2022-04-14 15:15:34,755 INFO L272 TraceCheckUtils]: 4: Hoare triple {7952#true} call #t~ret8 := main(); {7952#true} is VALID [2022-04-14 15:15:34,755 INFO L290 TraceCheckUtils]: 5: Hoare triple {7952#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7952#true} is VALID [2022-04-14 15:15:34,755 INFO L272 TraceCheckUtils]: 6: Hoare triple {7952#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:34,755 INFO L290 TraceCheckUtils]: 7: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:34,755 INFO L290 TraceCheckUtils]: 8: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:34,756 INFO L290 TraceCheckUtils]: 9: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,756 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7952#true} {7952#true} #77#return; {7952#true} is VALID [2022-04-14 15:15:34,757 INFO L290 TraceCheckUtils]: 11: Hoare triple {7952#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,758 INFO L290 TraceCheckUtils]: 12: Hoare triple {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,758 INFO L290 TraceCheckUtils]: 13: Hoare triple {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,758 INFO L272 TraceCheckUtils]: 14: Hoare triple {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:34,759 INFO L290 TraceCheckUtils]: 15: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:34,759 INFO L290 TraceCheckUtils]: 16: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:34,759 INFO L290 TraceCheckUtils]: 17: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,760 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7952#true} {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,760 INFO L272 TraceCheckUtils]: 19: Hoare triple {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:34,760 INFO L290 TraceCheckUtils]: 20: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:34,760 INFO L290 TraceCheckUtils]: 21: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:34,760 INFO L290 TraceCheckUtils]: 22: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,760 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7952#true} {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,761 INFO L290 TraceCheckUtils]: 24: Hoare triple {7990#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,761 INFO L290 TraceCheckUtils]: 25: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,762 INFO L290 TraceCheckUtils]: 26: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,762 INFO L272 TraceCheckUtils]: 27: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:34,762 INFO L290 TraceCheckUtils]: 28: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:34,762 INFO L290 TraceCheckUtils]: 29: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:34,762 INFO L290 TraceCheckUtils]: 30: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,763 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7952#true} {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,763 INFO L272 TraceCheckUtils]: 32: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:34,763 INFO L290 TraceCheckUtils]: 33: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:34,763 INFO L290 TraceCheckUtils]: 34: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:34,763 INFO L290 TraceCheckUtils]: 35: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,764 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7952#true} {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,764 INFO L272 TraceCheckUtils]: 37: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:34,764 INFO L290 TraceCheckUtils]: 38: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:34,764 INFO L290 TraceCheckUtils]: 39: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:34,764 INFO L290 TraceCheckUtils]: 40: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,765 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7952#true} {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,766 INFO L290 TraceCheckUtils]: 42: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,766 INFO L272 TraceCheckUtils]: 43: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:34,766 INFO L290 TraceCheckUtils]: 44: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:34,766 INFO L290 TraceCheckUtils]: 45: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:34,766 INFO L290 TraceCheckUtils]: 46: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,767 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7952#true} {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 15:15:34,767 INFO L290 TraceCheckUtils]: 48: Hoare triple {8030#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:15:34,768 INFO L290 TraceCheckUtils]: 49: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:15:34,768 INFO L290 TraceCheckUtils]: 50: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} assume !!(#t~post7 < 20);havoc #t~post7; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:15:34,768 INFO L272 TraceCheckUtils]: 51: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:34,768 INFO L290 TraceCheckUtils]: 52: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:34,769 INFO L290 TraceCheckUtils]: 53: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:34,769 INFO L290 TraceCheckUtils]: 54: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,769 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7952#true} {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #83#return; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:15:34,769 INFO L272 TraceCheckUtils]: 56: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:34,769 INFO L290 TraceCheckUtils]: 57: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:34,770 INFO L290 TraceCheckUtils]: 58: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:34,770 INFO L290 TraceCheckUtils]: 59: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,770 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {7952#true} {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #85#return; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:15:34,770 INFO L272 TraceCheckUtils]: 61: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:34,771 INFO L290 TraceCheckUtils]: 62: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:34,771 INFO L290 TraceCheckUtils]: 63: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:34,771 INFO L290 TraceCheckUtils]: 64: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,771 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {7952#true} {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #87#return; {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:15:34,772 INFO L290 TraceCheckUtils]: 66: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} assume !(~r~0 >= 2 * ~b~0); {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} is VALID [2022-04-14 15:15:34,773 INFO L290 TraceCheckUtils]: 67: Hoare triple {8103#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-14 15:15:34,773 INFO L290 TraceCheckUtils]: 68: Hoare triple {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-14 15:15:34,774 INFO L290 TraceCheckUtils]: 69: Hoare triple {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} assume !!(#t~post6 < 20);havoc #t~post6; {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-14 15:15:34,774 INFO L272 TraceCheckUtils]: 70: Hoare triple {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:34,780 INFO L290 TraceCheckUtils]: 71: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:34,780 INFO L290 TraceCheckUtils]: 72: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:34,780 INFO L290 TraceCheckUtils]: 73: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:34,782 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {7952#true} {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} #79#return; {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} is VALID [2022-04-14 15:15:34,783 INFO L272 TraceCheckUtils]: 75: Hoare triple {8161#(and (= main_~q~0 2) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8186#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:15:34,783 INFO L290 TraceCheckUtils]: 76: Hoare triple {8186#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8190#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:34,784 INFO L290 TraceCheckUtils]: 77: Hoare triple {8190#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7953#false} is VALID [2022-04-14 15:15:34,784 INFO L290 TraceCheckUtils]: 78: Hoare triple {7953#false} assume !false; {7953#false} is VALID [2022-04-14 15:15:34,784 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 20 proven. 10 refuted. 0 times theorem prover too weak. 180 trivial. 0 not checked. [2022-04-14 15:15:34,784 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 15:15:35,134 INFO L290 TraceCheckUtils]: 78: Hoare triple {7953#false} assume !false; {7953#false} is VALID [2022-04-14 15:15:35,134 INFO L290 TraceCheckUtils]: 77: Hoare triple {8190#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7953#false} is VALID [2022-04-14 15:15:35,135 INFO L290 TraceCheckUtils]: 76: Hoare triple {8186#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8190#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 15:15:35,135 INFO L272 TraceCheckUtils]: 75: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8186#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 15:15:35,136 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {7952#true} {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,136 INFO L290 TraceCheckUtils]: 73: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,136 INFO L290 TraceCheckUtils]: 72: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:35,136 INFO L290 TraceCheckUtils]: 71: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:35,136 INFO L272 TraceCheckUtils]: 70: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:35,136 INFO L290 TraceCheckUtils]: 69: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 20);havoc #t~post6; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,137 INFO L290 TraceCheckUtils]: 68: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,144 INFO L290 TraceCheckUtils]: 67: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,144 INFO L290 TraceCheckUtils]: 66: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !(~r~0 >= 2 * ~b~0); {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:15:35,145 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {7952#true} {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #87#return; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:15:35,145 INFO L290 TraceCheckUtils]: 64: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,145 INFO L290 TraceCheckUtils]: 63: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:35,145 INFO L290 TraceCheckUtils]: 62: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:35,145 INFO L272 TraceCheckUtils]: 61: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:35,148 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {7952#true} {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #85#return; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:15:35,148 INFO L290 TraceCheckUtils]: 59: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,148 INFO L290 TraceCheckUtils]: 58: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:35,148 INFO L290 TraceCheckUtils]: 57: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:35,148 INFO L272 TraceCheckUtils]: 56: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:35,149 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7952#true} {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #83#return; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:15:35,149 INFO L290 TraceCheckUtils]: 54: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,149 INFO L290 TraceCheckUtils]: 53: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:35,149 INFO L290 TraceCheckUtils]: 52: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:35,149 INFO L272 TraceCheckUtils]: 51: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:35,149 INFO L290 TraceCheckUtils]: 50: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:15:35,150 INFO L290 TraceCheckUtils]: 49: Hoare triple {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:15:35,152 INFO L290 TraceCheckUtils]: 48: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8231#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 15:15:35,153 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {7952#true} {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #89#return; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,153 INFO L290 TraceCheckUtils]: 46: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,153 INFO L290 TraceCheckUtils]: 45: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:35,153 INFO L290 TraceCheckUtils]: 44: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:35,153 INFO L272 TraceCheckUtils]: 43: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:35,153 INFO L290 TraceCheckUtils]: 42: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,154 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7952#true} {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #87#return; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,154 INFO L290 TraceCheckUtils]: 40: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,154 INFO L290 TraceCheckUtils]: 39: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:35,154 INFO L290 TraceCheckUtils]: 38: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:35,154 INFO L272 TraceCheckUtils]: 37: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:35,155 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7952#true} {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #85#return; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,155 INFO L290 TraceCheckUtils]: 35: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,155 INFO L290 TraceCheckUtils]: 34: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:35,155 INFO L290 TraceCheckUtils]: 33: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:35,155 INFO L272 TraceCheckUtils]: 32: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:35,156 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7952#true} {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #83#return; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,156 INFO L290 TraceCheckUtils]: 30: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,156 INFO L290 TraceCheckUtils]: 29: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:35,156 INFO L290 TraceCheckUtils]: 28: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:35,156 INFO L272 TraceCheckUtils]: 27: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:35,156 INFO L290 TraceCheckUtils]: 26: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 20);havoc #t~post7; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,157 INFO L290 TraceCheckUtils]: 25: Hoare triple {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,157 INFO L290 TraceCheckUtils]: 24: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8289#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,157 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7952#true} {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #81#return; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,157 INFO L290 TraceCheckUtils]: 22: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,158 INFO L290 TraceCheckUtils]: 21: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:35,158 INFO L290 TraceCheckUtils]: 20: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:35,158 INFO L272 TraceCheckUtils]: 19: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:35,158 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7952#true} {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,158 INFO L290 TraceCheckUtils]: 17: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,158 INFO L290 TraceCheckUtils]: 16: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:35,158 INFO L290 TraceCheckUtils]: 15: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:35,158 INFO L272 TraceCheckUtils]: 14: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:35,159 INFO L290 TraceCheckUtils]: 13: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 20);havoc #t~post6; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,159 INFO L290 TraceCheckUtils]: 12: Hoare triple {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,159 INFO L290 TraceCheckUtils]: 11: Hoare triple {7952#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8206#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 15:15:35,160 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7952#true} {7952#true} #77#return; {7952#true} is VALID [2022-04-14 15:15:35,160 INFO L290 TraceCheckUtils]: 9: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,160 INFO L290 TraceCheckUtils]: 8: Hoare triple {7952#true} assume !(0 == ~cond); {7952#true} is VALID [2022-04-14 15:15:35,160 INFO L290 TraceCheckUtils]: 7: Hoare triple {7952#true} ~cond := #in~cond; {7952#true} is VALID [2022-04-14 15:15:35,160 INFO L272 TraceCheckUtils]: 6: Hoare triple {7952#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7952#true} is VALID [2022-04-14 15:15:35,160 INFO L290 TraceCheckUtils]: 5: Hoare triple {7952#true} havoc ~x~0;havoc ~y~0;havoc ~q~0;havoc ~r~0;havoc ~a~0;havoc ~b~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7952#true} is VALID [2022-04-14 15:15:35,160 INFO L272 TraceCheckUtils]: 4: Hoare triple {7952#true} call #t~ret8 := main(); {7952#true} is VALID [2022-04-14 15:15:35,160 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7952#true} {7952#true} #93#return; {7952#true} is VALID [2022-04-14 15:15:35,160 INFO L290 TraceCheckUtils]: 2: Hoare triple {7952#true} assume true; {7952#true} is VALID [2022-04-14 15:15:35,160 INFO L290 TraceCheckUtils]: 1: Hoare triple {7952#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(14, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7952#true} is VALID [2022-04-14 15:15:35,160 INFO L272 TraceCheckUtils]: 0: Hoare triple {7952#true} call ULTIMATE.init(); {7952#true} is VALID [2022-04-14 15:15:35,160 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 20 proven. 6 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-14 15:15:35,161 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 15:15:35,161 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1658459299] [2022-04-14 15:15:35,161 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 15:15:35,161 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [855838562] [2022-04-14 15:15:35,161 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [855838562] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 15:15:35,161 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 15:15:35,161 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-14 15:15:35,161 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1945072423] [2022-04-14 15:15:35,161 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 15:15:35,162 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) Word has length 79 [2022-04-14 15:15:35,162 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 15:15:35,162 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-14 15:15:35,239 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:35,239 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-14 15:15:35,239 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 15:15:35,240 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-14 15:15:35,240 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=81, Unknown=0, NotChecked=0, Total=110 [2022-04-14 15:15:35,240 INFO L87 Difference]: Start difference. First operand 210 states and 244 transitions. Second operand has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-14 15:15:36,653 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:36,653 INFO L93 Difference]: Finished difference Result 236 states and 272 transitions. [2022-04-14 15:15:36,653 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-14 15:15:36,654 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) Word has length 79 [2022-04-14 15:15:36,654 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 15:15:36,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-14 15:15:36,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-04-14 15:15:36,656 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-14 15:15:36,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 117 transitions. [2022-04-14 15:15:36,675 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 117 transitions. [2022-04-14 15:15:36,818 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 15:15:36,818 INFO L225 Difference]: With dead ends: 236 [2022-04-14 15:15:36,818 INFO L226 Difference]: Without dead ends: 0 [2022-04-14 15:15:36,819 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 146 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=56, Invalid=154, Unknown=0, NotChecked=0, Total=210 [2022-04-14 15:15:36,819 INFO L913 BasicCegarLoop]: 54 mSDtfsCounter, 59 mSDsluCounter, 152 mSDsCounter, 0 mSdLazyCounter, 298 mSolverCounterSat, 76 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 206 SdHoareTripleChecker+Invalid, 374 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 76 IncrementalHoareTripleChecker+Valid, 298 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-14 15:15:36,819 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [60 Valid, 206 Invalid, 374 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [76 Valid, 298 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-14 15:15:36,819 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-14 15:15:36,820 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-14 15:15:36,820 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 15:15:36,820 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:15:36,820 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:15:36,820 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:15:36,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:36,820 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 15:15:36,820 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 15:15:36,820 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:36,820 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:36,820 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 15:15:36,820 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 15:15:36,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 15:15:36,820 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 15:15:36,820 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 15:15:36,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:36,821 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 15:15:36,821 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 15:15:36,821 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 15:15:36,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 15:15:36,821 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-14 15:15:36,821 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 79 [2022-04-14 15:15:36,821 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 15:15:36,821 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-14 15:15:36,821 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.4545454545454546) internal successors, (38), 10 states have internal predecessors, (38), 8 states have call successors, (24), 2 states have call predecessors, (24), 1 states have return successors, (21), 8 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-14 15:15:36,821 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 15:15:36,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 15:15:36,823 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 15:15:36,839 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-14 15:15:37,024 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-14 15:15:37,026 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-14 15:15:37,873 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-14 15:15:37,873 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-14 15:15:37,873 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-14 15:15:37,873 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-14 15:15:37,873 INFO L882 garLoopResultBuilder]: For program point L12(line 12) no Hoare annotation was computed. [2022-04-14 15:15:37,873 INFO L882 garLoopResultBuilder]: For program point L12-2(lines 11 13) no Hoare annotation was computed. [2022-04-14 15:15:37,874 INFO L882 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 11 13) no Hoare annotation was computed. [2022-04-14 15:15:37,874 INFO L878 garLoopResultBuilder]: At program point L37-4(lines 37 61) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= main_~x~0 main_~r~0) (= main_~q~0 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-14 15:15:37,874 INFO L882 garLoopResultBuilder]: For program point mainEXIT(lines 23 65) no Hoare annotation was computed. [2022-04-14 15:15:37,874 INFO L878 garLoopResultBuilder]: At program point L54(line 54) the Hoare annotation is: (or (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= (* 2 .cse0) main_~r~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:15:37,874 INFO L882 garLoopResultBuilder]: For program point L54-1(line 54) no Hoare annotation was computed. [2022-04-14 15:15:37,874 INFO L878 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:15:37,874 INFO L882 garLoopResultBuilder]: For program point L46-1(lines 46 58) no Hoare annotation was computed. [2022-04-14 15:15:37,874 INFO L882 garLoopResultBuilder]: For program point mainFINAL(lines 23 65) no Hoare annotation was computed. [2022-04-14 15:15:37,874 INFO L878 garLoopResultBuilder]: At program point L46-3(lines 46 58) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:15:37,874 INFO L882 garLoopResultBuilder]: For program point L46-4(lines 46 58) no Hoare annotation was computed. [2022-04-14 15:15:37,874 INFO L878 garLoopResultBuilder]: At program point L38(line 38) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-14 15:15:37,874 INFO L878 garLoopResultBuilder]: At program point L38-1(line 38) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-14 15:15:37,874 INFO L882 garLoopResultBuilder]: For program point L63(line 63) no Hoare annotation was computed. [2022-04-14 15:15:37,874 INFO L878 garLoopResultBuilder]: At program point L30(line 30) the Hoare annotation is: (or (= ~counter~0 |old(~counter~0)|) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:15:37,875 INFO L878 garLoopResultBuilder]: At program point mainENTRY(lines 23 65) the Hoare annotation is: (or (= ~counter~0 |old(~counter~0)|) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:15:37,875 INFO L882 garLoopResultBuilder]: For program point L30-1(line 30) no Hoare annotation was computed. [2022-04-14 15:15:37,875 INFO L882 garLoopResultBuilder]: For program point L49(lines 46 58) no Hoare annotation was computed. [2022-04-14 15:15:37,875 INFO L878 garLoopResultBuilder]: At program point L47(line 47) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:15:37,875 INFO L878 garLoopResultBuilder]: At program point L47-1(line 47) the Hoare annotation is: (or (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0))) (not (<= |old(~counter~0)| 0))) [2022-04-14 15:15:37,875 INFO L882 garLoopResultBuilder]: For program point L39(lines 37 61) no Hoare annotation was computed. [2022-04-14 15:15:37,875 INFO L882 garLoopResultBuilder]: For program point L37-1(lines 37 61) no Hoare annotation was computed. [2022-04-14 15:15:37,875 INFO L878 garLoopResultBuilder]: At program point L37-3(lines 37 61) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= 1 main_~y~0) (= main_~b~0 (* main_~a~0 main_~y~0)))) [2022-04-14 15:15:37,875 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-14 15:15:37,875 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-14 15:15:37,876 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-14 15:15:37,876 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-14 15:15:37,876 INFO L878 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: (<= ~counter~0 0) [2022-04-14 15:15:37,876 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-14 15:15:37,876 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-14 15:15:37,876 INFO L882 garLoopResultBuilder]: For program point L16(lines 16 17) no Hoare annotation was computed. [2022-04-14 15:15:37,876 INFO L882 garLoopResultBuilder]: For program point L15(lines 15 18) no Hoare annotation was computed. [2022-04-14 15:15:37,876 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-14 15:15:37,876 INFO L882 garLoopResultBuilder]: For program point L15-2(lines 14 20) no Hoare annotation was computed. [2022-04-14 15:15:37,876 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 14 20) no Hoare annotation was computed. [2022-04-14 15:15:37,876 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) no Hoare annotation was computed. [2022-04-14 15:15:37,879 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 15:15:37,880 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 15:15:37,882 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-14 15:15:37,883 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-14 15:15:37,883 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-14 15:15:37,884 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-14 15:15:37,884 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-14 15:15:37,884 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-14 15:15:37,884 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-04-14 15:15:37,885 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: L37-1 has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-14 15:15:37,886 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-14 15:15:37,887 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2022-04-14 15:15:37,887 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2022-04-14 15:15:37,887 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2022-04-14 15:15:37,887 WARN L170 areAnnotationChecker]: L46-4 has no Hoare annotation [2022-04-14 15:15:37,887 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-14 15:15:37,887 WARN L170 areAnnotationChecker]: L46-4 has no Hoare annotation [2022-04-14 15:15:37,887 WARN L170 areAnnotationChecker]: L54-1 has no Hoare annotation [2022-04-14 15:15:37,887 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-14 15:15:37,887 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-14 15:15:37,887 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-14 15:15:37,887 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-14 15:15:37,887 INFO L163 areAnnotationChecker]: CFG has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-14 15:15:37,894 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 03:15:37 BoogieIcfgContainer [2022-04-14 15:15:37,894 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 15:15:37,895 INFO L158 Benchmark]: Toolchain (without parser) took 80203.32ms. Allocated memory was 167.8MB in the beginning and 225.4MB in the end (delta: 57.7MB). Free memory was 111.9MB in the beginning and 126.7MB in the end (delta: -14.8MB). Peak memory consumption was 44.4MB. Max. memory is 8.0GB. [2022-04-14 15:15:37,896 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 167.8MB. Free memory is still 127.9MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 15:15:37,896 INFO L158 Benchmark]: CACSL2BoogieTranslator took 222.40ms. Allocated memory was 167.8MB in the beginning and 225.4MB in the end (delta: 57.7MB). Free memory was 111.8MB in the beginning and 201.1MB in the end (delta: -89.3MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. [2022-04-14 15:15:37,896 INFO L158 Benchmark]: Boogie Preprocessor took 47.67ms. Allocated memory is still 225.4MB. Free memory was 201.1MB in the beginning and 199.6MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 15:15:37,896 INFO L158 Benchmark]: RCFGBuilder took 303.41ms. Allocated memory is still 225.4MB. Free memory was 199.6MB in the beginning and 187.5MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-14 15:15:37,897 INFO L158 Benchmark]: TraceAbstraction took 79625.44ms. Allocated memory is still 225.4MB. Free memory was 186.5MB in the beginning and 126.7MB in the end (delta: 59.8MB). Peak memory consumption was 60.9MB. Max. memory is 8.0GB. [2022-04-14 15:15:37,898 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.11ms. Allocated memory is still 167.8MB. Free memory is still 127.9MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 222.40ms. Allocated memory was 167.8MB in the beginning and 225.4MB in the end (delta: 57.7MB). Free memory was 111.8MB in the beginning and 201.1MB in the end (delta: -89.3MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. * Boogie Preprocessor took 47.67ms. Allocated memory is still 225.4MB. Free memory was 201.1MB in the beginning and 199.6MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 303.41ms. Allocated memory is still 225.4MB. Free memory was 199.6MB in the beginning and 187.5MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 79625.44ms. Allocated memory is still 225.4MB. Free memory was 186.5MB in the beginning and 126.7MB in the end (delta: 59.8MB). Peak memory consumption was 60.9MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 17]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 41 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 79.6s, OverallIterations: 12, TraceHistogramMax: 11, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 6.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.8s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 388 SdHoareTripleChecker+Valid, 1.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 364 mSDsluCounter, 1922 SdHoareTripleChecker+Invalid, 1.4s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1394 mSDsCounter, 199 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1198 IncrementalHoareTripleChecker+Invalid, 1397 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 199 mSolverCounterUnsat, 528 mSDtfsCounter, 1198 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 749 GetRequests, 653 SyntacticMatches, 5 SemanticMatches, 91 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 137 ImplicationChecksByTransitivity, 0.6s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=239occurred in iteration=9, InterpolantAutomatonStates: 88, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.7s AutomataMinimizationTime, 12 MinimizatonAttempts, 28 StatesRemovedByMinimization, 7 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 16 LocationsWithAnnotation, 129 PreInvPairs, 200 NumberOfFragments, 250 HoareAnnotationTreeSize, 129 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 16 FomulaSimplificationsInter, 2803 FormulaSimplificationTreeSizeReductionInter, 0.7s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 67.9s InterpolantComputationTime, 476 NumberOfCodeBlocks, 476 NumberOfCodeBlocksAsserted, 12 NumberOfCheckSat, 699 ConstructedInterpolants, 0 QuantifiedInterpolants, 1996 SizeOfPredicates, 29 NumberOfNonLiveVariables, 1473 ConjunctsInSsa, 112 ConjunctsInUnsatCore, 16 InterpolantComputations, 7 PerfectInterpolantSequences, 861/960 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 46]: Loop Invariant Derived loop invariant: (((q * y + r == x && 1 <= r) && 1 <= y) && b == a * y) || !(\old(counter) <= 0) - InvariantResult [Line: 37]: Loop Invariant Derived loop invariant: !(\old(counter) <= 0) || ((q * y + r == x && 1 <= y) && b == a * y) RESULT: Ultimate proved your program to be correct! [2022-04-14 15:15:37,916 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...