/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/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 11:22:36,529 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 11:22:36,530 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 11:22:36,561 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 11:22:36,561 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 11:22:36,562 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 11:22:36,564 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 11:22:36,566 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 11:22:36,567 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 11:22:36,570 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 11:22:36,571 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 11:22:36,573 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 11:22:36,573 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 11:22:36,574 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 11:22:36,575 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 11:22:36,578 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 11:22:36,578 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 11:22:36,578 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 11:22:36,580 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 11:22:36,584 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 11:22:36,585 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 11:22:36,586 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 11:22:36,586 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 11:22:36,587 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 11:22:36,587 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 11:22:36,592 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 11:22:36,592 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 11:22:36,592 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 11:22:36,592 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 11:22:36,593 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 11:22:36,593 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 11:22:36,594 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 11:22:36,595 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 11:22:36,595 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 11:22:36,595 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 11:22:36,596 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 11:22:36,596 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 11:22:36,596 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 11:22:36,596 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 11:22:36,596 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 11:22:36,597 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 11:22:36,598 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 11:22:36,599 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-08 11:22:36,607 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 11:22:36,608 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 11:22:36,608 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 11:22:36,608 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 11:22:36,608 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 11:22:36,609 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 11:22:36,609 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 11:22:36,609 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 11:22:36,609 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 11:22:36,609 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 11:22:36,610 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 11:22:36,610 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 11:22:36,610 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 11:22:36,610 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 11:22:36,610 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 11:22:36,610 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 11:22:36,610 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 11:22:36,610 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 11:22:36,610 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 11:22:36,610 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 11:22:36,610 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 11:22:36,610 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-08 11:22:36,611 INFO L138 SettingsManager]: * Use separate solver for trace checks=false 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-08 11:22:36,783 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 11:22:36,795 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 11:22:36,796 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 11:22:36,797 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 11:22:36,798 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 11:22:36,798 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound50.c [2022-04-08 11:22:36,834 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/65445b688/83f1b7effef44f59ad67ee7d0549f1e8/FLAG3516d0582 [2022-04-08 11:22:37,182 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 11:22:37,183 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_unwindbound50.c [2022-04-08 11:22:37,186 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/65445b688/83f1b7effef44f59ad67ee7d0549f1e8/FLAG3516d0582 [2022-04-08 11:22:37,194 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/65445b688/83f1b7effef44f59ad67ee7d0549f1e8 [2022-04-08 11:22:37,196 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 11:22:37,197 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 11:22:37,199 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 11:22:37,200 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 11:22:37,201 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 11:22:37,202 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 11:22:37" (1/1) ... [2022-04-08 11:22:37,203 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6d4e72a0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:37, skipping insertion in model container [2022-04-08 11:22:37,203 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 11:22:37" (1/1) ... [2022-04-08 11:22:37,208 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 11:22:37,221 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 11:22:37,350 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_unwindbound50.c[576,589] [2022-04-08 11:22:37,362 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 11:22:37,367 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 11:22:37,375 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_unwindbound50.c[576,589] [2022-04-08 11:22:37,380 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 11:22:37,389 INFO L208 MainTranslator]: Completed translation [2022-04-08 11:22:37,389 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:37 WrapperNode [2022-04-08 11:22:37,389 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 11:22:37,390 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 11:22:37,390 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 11:22:37,390 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 11:22:37,397 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:37" (1/1) ... [2022-04-08 11:22:37,397 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:37" (1/1) ... [2022-04-08 11:22:37,401 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:37" (1/1) ... [2022-04-08 11:22:37,401 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:37" (1/1) ... [2022-04-08 11:22:37,407 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:37" (1/1) ... [2022-04-08 11:22:37,409 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:37" (1/1) ... [2022-04-08 11:22:37,410 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:37" (1/1) ... [2022-04-08 11:22:37,411 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 11:22:37,412 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 11:22:37,412 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 11:22:37,412 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 11:22:37,415 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:37" (1/1) ... [2022-04-08 11:22:37,422 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 11:22:37,428 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:37,436 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-08 11:22:37,441 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-08 11:22:37,458 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 11:22:37,458 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 11:22:37,458 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 11:22:37,459 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 11:22:37,459 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 11:22:37,459 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 11:22:37,459 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 11:22:37,459 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 11:22:37,459 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 11:22:37,459 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 11:22:37,459 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 11:22:37,459 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 11:22:37,459 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 11:22:37,460 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 11:22:37,460 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 11:22:37,460 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 11:22:37,460 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 11:22:37,460 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 11:22:37,460 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 11:22:37,460 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 11:22:37,503 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 11:22:37,504 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 11:22:37,652 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 11:22:37,657 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 11:22:37,657 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 11:22:37,658 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 11:22:37 BoogieIcfgContainer [2022-04-08 11:22:37,658 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 11:22:37,660 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 11:22:37,660 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 11:22:37,662 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 11:22:37,662 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 11:22:37" (1/3) ... [2022-04-08 11:22:37,662 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2260fbd5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 11:22:37, skipping insertion in model container [2022-04-08 11:22:37,662 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 11:22:37" (2/3) ... [2022-04-08 11:22:37,663 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2260fbd5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 11:22:37, skipping insertion in model container [2022-04-08 11:22:37,663 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 11:22:37" (3/3) ... [2022-04-08 11:22:37,663 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_unwindbound50.c [2022-04-08 11:22:37,666 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 11:22:37,667 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 11:22:37,692 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 11:22:37,696 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, 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-08 11:22:37,696 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 11:22:37,716 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-08 11:22:37,720 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-08 11:22:37,720 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:37,721 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:22:37,721 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:37,724 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:37,724 INFO L85 PathProgramCache]: Analyzing trace with hash -1588022502, now seen corresponding path program 1 times [2022-04-08 11:22:37,729 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:37,729 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [627811996] [2022-04-08 11:22:37,736 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:37,736 INFO L85 PathProgramCache]: Analyzing trace with hash -1588022502, now seen corresponding path program 2 times [2022-04-08 11:22:37,738 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:37,738 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1290652832] [2022-04-08 11:22:37,739 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:37,739 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:37,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:37,869 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 11:22:37,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:37,882 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-08 11:22:37,882 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-08 11:22:37,883 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-08 11:22:37,883 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 11:22:37,886 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:37,890 INFO L290 TraceCheckUtils]: 0: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 11:22:37,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 11:22:37,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 11:22:37,891 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-08 11:22:37,892 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-08 11:22:37,892 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-08 11:22:37,892 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#true} assume true; {41#true} is VALID [2022-04-08 11:22:37,893 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#true} {41#true} #93#return; {41#true} is VALID [2022-04-08 11:22:37,893 INFO L272 TraceCheckUtils]: 4: Hoare triple {41#true} call #t~ret8 := main(); {41#true} is VALID [2022-04-08 11:22:37,893 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-08 11:22:37,893 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-08 11:22:37,893 INFO L290 TraceCheckUtils]: 7: Hoare triple {41#true} ~cond := #in~cond; {41#true} is VALID [2022-04-08 11:22:37,894 INFO L290 TraceCheckUtils]: 8: Hoare triple {41#true} assume 0 == ~cond;assume false; {42#false} is VALID [2022-04-08 11:22:37,894 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#false} assume true; {42#false} is VALID [2022-04-08 11:22:37,894 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#false} {41#true} #77#return; {42#false} is VALID [2022-04-08 11:22:37,894 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-08 11:22:37,895 INFO L290 TraceCheckUtils]: 12: Hoare triple {42#false} assume !true; {42#false} is VALID [2022-04-08 11:22:37,895 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-08 11:22:37,895 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#false} ~cond := #in~cond; {42#false} is VALID [2022-04-08 11:22:37,895 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#false} assume 0 == ~cond; {42#false} is VALID [2022-04-08 11:22:37,895 INFO L290 TraceCheckUtils]: 16: Hoare triple {42#false} assume !false; {42#false} is VALID [2022-04-08 11:22:37,896 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-08 11:22:37,896 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:37,896 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1290652832] [2022-04-08 11:22:37,897 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1290652832] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:37,897 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:37,897 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 11:22:37,899 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:37,899 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [627811996] [2022-04-08 11:22:37,899 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [627811996] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:37,899 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:37,899 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 11:22:37,899 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1964170865] [2022-04-08 11:22:37,900 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:37,903 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-08 11:22:37,904 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:37,906 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-08 11:22:37,922 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-08 11:22:37,923 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 11:22:37,923 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:37,941 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 11:22:37,942 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 11:22:37,944 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-08 11:22:38,094 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:38,094 INFO L93 Difference]: Finished difference Result 68 states and 101 transitions. [2022-04-08 11:22:38,094 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 11:22:38,095 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-08 11:22:38,095 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:38,096 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-08 11:22:38,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-08 11:22:38,102 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-08 11:22:38,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-08 11:22:38,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 101 transitions. [2022-04-08 11:22:38,197 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-08 11:22:38,207 INFO L225 Difference]: With dead ends: 68 [2022-04-08 11:22:38,207 INFO L226 Difference]: Without dead ends: 34 [2022-04-08 11:22:38,210 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-08 11:22:38,213 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-08 11:22:38,214 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-08 11:22:38,224 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-08 11:22:38,237 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 33. [2022-04-08 11:22:38,237 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:38,238 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-08 11:22:38,238 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-08 11:22:38,239 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-08 11:22:38,242 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:38,242 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 11:22:38,242 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 11:22:38,243 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:38,243 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:38,243 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-08 11:22:38,244 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-08 11:22:38,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:38,247 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-08 11:22:38,247 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-08 11:22:38,247 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:38,247 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:38,247 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:38,248 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:38,248 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-08 11:22:38,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 42 transitions. [2022-04-08 11:22:38,251 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 42 transitions. Word has length 17 [2022-04-08 11:22:38,251 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:38,251 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 42 transitions. [2022-04-08 11:22:38,251 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-08 11:22:38,252 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 42 transitions. [2022-04-08 11:22:38,284 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:38,284 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 42 transitions. [2022-04-08 11:22:38,284 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-08 11:22:38,284 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:38,284 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-08 11:22:38,285 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 11:22:38,285 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:38,285 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:38,286 INFO L85 PathProgramCache]: Analyzing trace with hash 766070672, now seen corresponding path program 1 times [2022-04-08 11:22:38,286 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:38,286 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1655197013] [2022-04-08 11:22:38,286 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:38,287 INFO L85 PathProgramCache]: Analyzing trace with hash 766070672, now seen corresponding path program 2 times [2022-04-08 11:22:38,287 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:38,287 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1088274974] [2022-04-08 11:22:38,287 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:38,287 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:38,302 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:38,302 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [879326359] [2022-04-08 11:22:38,302 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:38,302 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:38,302 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:38,304 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-08 11:22:38,304 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-08 11:22:38,340 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 11:22:38,340 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:38,341 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 11:22:38,349 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:38,351 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:38,470 INFO L272 TraceCheckUtils]: 0: Hoare triple {323#true} call ULTIMATE.init(); {323#true} is VALID [2022-04-08 11:22:38,471 INFO L290 TraceCheckUtils]: 1: Hoare triple {323#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; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:38,471 INFO L290 TraceCheckUtils]: 2: Hoare triple {331#(<= ~counter~0 0)} assume true; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:38,472 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {331#(<= ~counter~0 0)} {323#true} #93#return; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:38,472 INFO L272 TraceCheckUtils]: 4: Hoare triple {331#(<= ~counter~0 0)} call #t~ret8 := main(); {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:38,472 INFO L290 TraceCheckUtils]: 5: Hoare triple {331#(<= ~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; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:38,473 INFO L272 TraceCheckUtils]: 6: Hoare triple {331#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:38,473 INFO L290 TraceCheckUtils]: 7: Hoare triple {331#(<= ~counter~0 0)} ~cond := #in~cond; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:38,474 INFO L290 TraceCheckUtils]: 8: Hoare triple {331#(<= ~counter~0 0)} assume !(0 == ~cond); {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:38,474 INFO L290 TraceCheckUtils]: 9: Hoare triple {331#(<= ~counter~0 0)} assume true; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:38,475 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {331#(<= ~counter~0 0)} {331#(<= ~counter~0 0)} #77#return; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:38,475 INFO L290 TraceCheckUtils]: 11: Hoare triple {331#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {331#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:38,475 INFO L290 TraceCheckUtils]: 12: Hoare triple {331#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {365#(<= |main_#t~post6| 0)} is VALID [2022-04-08 11:22:38,476 INFO L290 TraceCheckUtils]: 13: Hoare triple {365#(<= |main_#t~post6| 0)} assume !(#t~post6 < 50);havoc #t~post6; {324#false} is VALID [2022-04-08 11:22:38,476 INFO L272 TraceCheckUtils]: 14: Hoare triple {324#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {324#false} is VALID [2022-04-08 11:22:38,476 INFO L290 TraceCheckUtils]: 15: Hoare triple {324#false} ~cond := #in~cond; {324#false} is VALID [2022-04-08 11:22:38,476 INFO L290 TraceCheckUtils]: 16: Hoare triple {324#false} assume 0 == ~cond; {324#false} is VALID [2022-04-08 11:22:38,476 INFO L290 TraceCheckUtils]: 17: Hoare triple {324#false} assume !false; {324#false} is VALID [2022-04-08 11:22:38,477 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-08 11:22:38,477 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:38,477 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:38,477 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1088274974] [2022-04-08 11:22:38,477 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:38,477 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [879326359] [2022-04-08 11:22:38,478 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [879326359] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:38,478 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:38,478 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 11:22:38,478 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:38,478 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1655197013] [2022-04-08 11:22:38,479 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1655197013] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:38,479 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:38,479 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 11:22:38,479 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1260354514] [2022-04-08 11:22:38,479 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:38,480 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-08 11:22:38,480 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:38,480 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-08 11:22:38,493 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-08 11:22:38,493 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 11:22:38,493 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:38,493 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 11:22:38,494 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 11:22:38,494 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-08 11:22:38,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:38,564 INFO L93 Difference]: Finished difference Result 42 states and 51 transitions. [2022-04-08 11:22:38,564 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 11:22:38,564 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-08 11:22:38,564 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:38,565 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-08 11:22:38,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-08 11:22:38,567 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-08 11:22:38,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 51 transitions. [2022-04-08 11:22:38,568 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 51 transitions. [2022-04-08 11:22:38,598 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-08 11:22:38,600 INFO L225 Difference]: With dead ends: 42 [2022-04-08 11:22:38,600 INFO L226 Difference]: Without dead ends: 35 [2022-04-08 11:22:38,600 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-08 11:22:38,601 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-08 11:22:38,601 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-08 11:22:38,602 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-08 11:22:38,623 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-08 11:22:38,623 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:38,624 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-08 11:22:38,624 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-08 11:22:38,624 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-08 11:22:38,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:38,626 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-08 11:22:38,627 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 11:22:38,627 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:38,627 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:38,627 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-08 11:22:38,628 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-08 11:22:38,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:38,630 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-08 11:22:38,630 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 11:22:38,630 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:38,630 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:38,630 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:38,631 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:38,631 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-08 11:22:38,632 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-08 11:22:38,633 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 18 [2022-04-08 11:22:38,633 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:38,633 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-08 11:22:38,633 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-08 11:22:38,633 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 44 transitions. [2022-04-08 11:22:38,669 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:38,669 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 11:22:38,672 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-08 11:22:38,672 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:38,674 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-08 11:22:38,692 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-08 11:22:38,892 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-08 11:22:38,893 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:38,893 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:38,893 INFO L85 PathProgramCache]: Analyzing trace with hash 767560222, now seen corresponding path program 1 times [2022-04-08 11:22:38,893 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:38,893 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1732745707] [2022-04-08 11:22:38,894 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:38,894 INFO L85 PathProgramCache]: Analyzing trace with hash 767560222, now seen corresponding path program 2 times [2022-04-08 11:22:38,894 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:38,894 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [696005820] [2022-04-08 11:22:38,894 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:38,895 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:38,906 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:38,906 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1693619503] [2022-04-08 11:22:38,906 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:38,906 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:38,906 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:38,907 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-08 11:22:38,909 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-08 11:22:38,945 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 11:22:38,945 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:38,946 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:22:38,953 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:38,953 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:39,051 INFO L272 TraceCheckUtils]: 0: Hoare triple {604#true} call ULTIMATE.init(); {604#true} is VALID [2022-04-08 11:22:39,052 INFO L290 TraceCheckUtils]: 1: Hoare triple {604#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; {604#true} is VALID [2022-04-08 11:22:39,052 INFO L290 TraceCheckUtils]: 2: Hoare triple {604#true} assume true; {604#true} is VALID [2022-04-08 11:22:39,052 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {604#true} {604#true} #93#return; {604#true} is VALID [2022-04-08 11:22:39,052 INFO L272 TraceCheckUtils]: 4: Hoare triple {604#true} call #t~ret8 := main(); {604#true} is VALID [2022-04-08 11:22:39,052 INFO L290 TraceCheckUtils]: 5: Hoare triple {604#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; {604#true} is VALID [2022-04-08 11:22:39,053 INFO L272 TraceCheckUtils]: 6: Hoare triple {604#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {604#true} is VALID [2022-04-08 11:22:39,053 INFO L290 TraceCheckUtils]: 7: Hoare triple {604#true} ~cond := #in~cond; {604#true} is VALID [2022-04-08 11:22:39,053 INFO L290 TraceCheckUtils]: 8: Hoare triple {604#true} assume !(0 == ~cond); {604#true} is VALID [2022-04-08 11:22:39,053 INFO L290 TraceCheckUtils]: 9: Hoare triple {604#true} assume true; {604#true} is VALID [2022-04-08 11:22:39,053 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {604#true} {604#true} #77#return; {604#true} is VALID [2022-04-08 11:22:39,055 INFO L290 TraceCheckUtils]: 11: Hoare triple {604#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {642#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-08 11:22:39,056 INFO L290 TraceCheckUtils]: 12: Hoare triple {642#(and (= main_~a~0 0) (= main_~b~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {642#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-08 11:22:39,057 INFO L290 TraceCheckUtils]: 13: Hoare triple {642#(and (= main_~a~0 0) (= main_~b~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {642#(and (= main_~a~0 0) (= main_~b~0 0))} is VALID [2022-04-08 11:22:39,059 INFO L272 TraceCheckUtils]: 14: Hoare triple {642#(and (= main_~a~0 0) (= main_~b~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {652#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:39,060 INFO L290 TraceCheckUtils]: 15: Hoare triple {652#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {656#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:39,061 INFO L290 TraceCheckUtils]: 16: Hoare triple {656#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {605#false} is VALID [2022-04-08 11:22:39,061 INFO L290 TraceCheckUtils]: 17: Hoare triple {605#false} assume !false; {605#false} is VALID [2022-04-08 11:22:39,061 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-08 11:22:39,061 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:39,061 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:39,062 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [696005820] [2022-04-08 11:22:39,062 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:39,062 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1693619503] [2022-04-08 11:22:39,062 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1693619503] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:39,062 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:39,062 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:39,062 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:39,062 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1732745707] [2022-04-08 11:22:39,063 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1732745707] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:39,063 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:39,063 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:39,063 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [396762753] [2022-04-08 11:22:39,063 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:39,064 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-08 11:22:39,064 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:39,064 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-08 11:22:39,074 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-08 11:22:39,074 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:22:39,075 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:39,075 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:22:39,075 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:22:39,076 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-08 11:22:39,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:39,215 INFO L93 Difference]: Finished difference Result 45 states and 56 transitions. [2022-04-08 11:22:39,215 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:22:39,215 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-08 11:22:39,216 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:39,216 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-08 11:22:39,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-08 11:22:39,223 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-08 11:22:39,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-08 11:22:39,227 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-08 11:22:39,266 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-08 11:22:39,270 INFO L225 Difference]: With dead ends: 45 [2022-04-08 11:22:39,270 INFO L226 Difference]: Without dead ends: 43 [2022-04-08 11:22:39,271 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-08 11:22:39,278 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-08 11:22:39,279 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-08 11:22:39,280 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-08 11:22:39,298 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-08 11:22:39,298 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:39,300 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-08 11:22:39,301 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-08 11:22:39,302 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-08 11:22:39,307 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:39,307 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-08 11:22:39,307 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-08 11:22:39,308 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:39,308 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:39,308 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-08 11:22:39,308 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-08 11:22:39,313 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:39,313 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-08 11:22:39,313 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-08 11:22:39,313 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:39,313 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:39,313 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:39,314 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:39,314 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-08 11:22:39,315 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-08 11:22:39,315 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 18 [2022-04-08 11:22:39,315 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:39,315 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-08 11:22:39,315 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-08 11:22:39,316 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 40 states and 49 transitions. [2022-04-08 11:22:39,353 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:39,353 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-08 11:22:39,353 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 11:22:39,353 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:39,353 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-08 11:22:39,369 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-08 11:22:39,569 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-08 11:22:39,570 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:39,570 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:39,570 INFO L85 PathProgramCache]: Analyzing trace with hash -1016228092, now seen corresponding path program 1 times [2022-04-08 11:22:39,571 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:39,571 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [124445021] [2022-04-08 11:22:39,571 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:39,571 INFO L85 PathProgramCache]: Analyzing trace with hash -1016228092, now seen corresponding path program 2 times [2022-04-08 11:22:39,571 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:39,572 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [843329885] [2022-04-08 11:22:39,572 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:39,572 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:39,585 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:39,586 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1889392536] [2022-04-08 11:22:39,586 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:39,586 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:39,586 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:39,591 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-08 11:22:39,592 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-08 11:22:39,629 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:22:39,629 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:39,630 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:22:39,635 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:39,637 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:39,717 INFO L272 TraceCheckUtils]: 0: Hoare triple {920#true} call ULTIMATE.init(); {920#true} is VALID [2022-04-08 11:22:39,718 INFO L290 TraceCheckUtils]: 1: Hoare triple {920#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; {920#true} is VALID [2022-04-08 11:22:39,718 INFO L290 TraceCheckUtils]: 2: Hoare triple {920#true} assume true; {920#true} is VALID [2022-04-08 11:22:39,718 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {920#true} {920#true} #93#return; {920#true} is VALID [2022-04-08 11:22:39,718 INFO L272 TraceCheckUtils]: 4: Hoare triple {920#true} call #t~ret8 := main(); {920#true} is VALID [2022-04-08 11:22:39,718 INFO L290 TraceCheckUtils]: 5: Hoare triple {920#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; {920#true} is VALID [2022-04-08 11:22:39,718 INFO L272 TraceCheckUtils]: 6: Hoare triple {920#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {920#true} is VALID [2022-04-08 11:22:39,718 INFO L290 TraceCheckUtils]: 7: Hoare triple {920#true} ~cond := #in~cond; {920#true} is VALID [2022-04-08 11:22:39,719 INFO L290 TraceCheckUtils]: 8: Hoare triple {920#true} assume !(0 == ~cond); {920#true} is VALID [2022-04-08 11:22:39,719 INFO L290 TraceCheckUtils]: 9: Hoare triple {920#true} assume true; {920#true} is VALID [2022-04-08 11:22:39,719 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {920#true} {920#true} #77#return; {920#true} is VALID [2022-04-08 11:22:39,719 INFO L290 TraceCheckUtils]: 11: Hoare triple {920#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:22:39,720 INFO L290 TraceCheckUtils]: 12: Hoare triple {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:22:39,721 INFO L290 TraceCheckUtils]: 13: Hoare triple {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:22:39,723 INFO L272 TraceCheckUtils]: 14: Hoare triple {958#(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)); {920#true} is VALID [2022-04-08 11:22:39,723 INFO L290 TraceCheckUtils]: 15: Hoare triple {920#true} ~cond := #in~cond; {920#true} is VALID [2022-04-08 11:22:39,723 INFO L290 TraceCheckUtils]: 16: Hoare triple {920#true} assume !(0 == ~cond); {920#true} is VALID [2022-04-08 11:22:39,723 INFO L290 TraceCheckUtils]: 17: Hoare triple {920#true} assume true; {920#true} is VALID [2022-04-08 11:22:39,724 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {920#true} {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {958#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:22:39,725 INFO L272 TraceCheckUtils]: 19: Hoare triple {958#(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)); {983#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:39,725 INFO L290 TraceCheckUtils]: 20: Hoare triple {983#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {987#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:39,725 INFO L290 TraceCheckUtils]: 21: Hoare triple {987#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {921#false} is VALID [2022-04-08 11:22:39,725 INFO L290 TraceCheckUtils]: 22: Hoare triple {921#false} assume !false; {921#false} is VALID [2022-04-08 11:22:39,726 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-08 11:22:39,726 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:39,726 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:39,726 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [843329885] [2022-04-08 11:22:39,726 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:39,727 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1889392536] [2022-04-08 11:22:39,727 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1889392536] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:39,727 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:39,727 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:39,727 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:39,727 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [124445021] [2022-04-08 11:22:39,729 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [124445021] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:39,730 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:39,730 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:39,730 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2082964624] [2022-04-08 11:22:39,730 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:39,730 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-08 11:22:39,731 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:39,731 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-08 11:22:39,745 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-08 11:22:39,745 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:22:39,745 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:39,746 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:22:39,746 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:22:39,746 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-08 11:22:39,938 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:39,938 INFO L93 Difference]: Finished difference Result 58 states and 74 transitions. [2022-04-08 11:22:39,938 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:22:39,939 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-08 11:22:39,939 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:39,939 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-08 11:22:39,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-08 11:22:39,941 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-08 11:22:39,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 71 transitions. [2022-04-08 11:22:39,942 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 71 transitions. [2022-04-08 11:22:39,992 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-08 11:22:39,993 INFO L225 Difference]: With dead ends: 58 [2022-04-08 11:22:39,994 INFO L226 Difference]: Without dead ends: 55 [2022-04-08 11:22:39,994 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-08 11:22:39,994 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-08 11:22:39,995 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-08 11:22:39,995 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-08 11:22:40,010 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 54. [2022-04-08 11:22:40,011 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:40,011 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-08 11:22:40,011 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-08 11:22:40,012 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-08 11:22:40,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:40,014 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-08 11:22:40,014 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-08 11:22:40,014 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:40,014 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:40,015 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-08 11:22:40,031 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-08 11:22:40,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:40,033 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-08 11:22:40,033 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-08 11:22:40,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:40,034 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:40,034 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:40,034 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:40,035 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-08 11:22:40,036 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 69 transitions. [2022-04-08 11:22:40,036 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 69 transitions. Word has length 23 [2022-04-08 11:22:40,036 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:40,037 INFO L478 AbstractCegarLoop]: Abstraction has 54 states and 69 transitions. [2022-04-08 11:22:40,037 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-08 11:22:40,037 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 54 states and 69 transitions. [2022-04-08 11:22:40,090 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:40,091 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 69 transitions. [2022-04-08 11:22:40,102 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-08 11:22:40,102 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:40,102 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-08 11:22:40,119 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-08 11:22:40,315 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-08 11:22:40,315 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:40,316 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:40,316 INFO L85 PathProgramCache]: Analyzing trace with hash 2019703110, now seen corresponding path program 1 times [2022-04-08 11:22:40,316 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:40,316 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [379329625] [2022-04-08 11:22:40,316 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:40,316 INFO L85 PathProgramCache]: Analyzing trace with hash 2019703110, now seen corresponding path program 2 times [2022-04-08 11:22:40,317 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:40,317 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [221555064] [2022-04-08 11:22:40,317 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:40,317 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:40,327 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:40,327 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [23459731] [2022-04-08 11:22:40,327 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:40,327 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:40,327 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:40,328 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-08 11:22:40,329 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-08 11:22:40,361 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:22:40,361 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:40,362 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:22:40,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:40,374 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:40,451 INFO L272 TraceCheckUtils]: 0: Hoare triple {1329#true} call ULTIMATE.init(); {1329#true} is VALID [2022-04-08 11:22:40,451 INFO L290 TraceCheckUtils]: 1: Hoare triple {1329#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; {1329#true} is VALID [2022-04-08 11:22:40,451 INFO L290 TraceCheckUtils]: 2: Hoare triple {1329#true} assume true; {1329#true} is VALID [2022-04-08 11:22:40,451 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1329#true} {1329#true} #93#return; {1329#true} is VALID [2022-04-08 11:22:40,451 INFO L272 TraceCheckUtils]: 4: Hoare triple {1329#true} call #t~ret8 := main(); {1329#true} is VALID [2022-04-08 11:22:40,452 INFO L290 TraceCheckUtils]: 5: Hoare triple {1329#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; {1329#true} is VALID [2022-04-08 11:22:40,452 INFO L272 TraceCheckUtils]: 6: Hoare triple {1329#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1329#true} is VALID [2022-04-08 11:22:40,452 INFO L290 TraceCheckUtils]: 7: Hoare triple {1329#true} ~cond := #in~cond; {1329#true} is VALID [2022-04-08 11:22:40,452 INFO L290 TraceCheckUtils]: 8: Hoare triple {1329#true} assume !(0 == ~cond); {1329#true} is VALID [2022-04-08 11:22:40,452 INFO L290 TraceCheckUtils]: 9: Hoare triple {1329#true} assume true; {1329#true} is VALID [2022-04-08 11:22:40,452 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1329#true} {1329#true} #77#return; {1329#true} is VALID [2022-04-08 11:22:40,452 INFO L290 TraceCheckUtils]: 11: Hoare triple {1329#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1329#true} is VALID [2022-04-08 11:22:40,452 INFO L290 TraceCheckUtils]: 12: Hoare triple {1329#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1329#true} is VALID [2022-04-08 11:22:40,452 INFO L290 TraceCheckUtils]: 13: Hoare triple {1329#true} assume !!(#t~post6 < 50);havoc #t~post6; {1329#true} is VALID [2022-04-08 11:22:40,453 INFO L272 TraceCheckUtils]: 14: Hoare triple {1329#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1329#true} is VALID [2022-04-08 11:22:40,453 INFO L290 TraceCheckUtils]: 15: Hoare triple {1329#true} ~cond := #in~cond; {1329#true} is VALID [2022-04-08 11:22:40,453 INFO L290 TraceCheckUtils]: 16: Hoare triple {1329#true} assume !(0 == ~cond); {1329#true} is VALID [2022-04-08 11:22:40,453 INFO L290 TraceCheckUtils]: 17: Hoare triple {1329#true} assume true; {1329#true} is VALID [2022-04-08 11:22:40,453 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1329#true} {1329#true} #79#return; {1329#true} is VALID [2022-04-08 11:22:40,455 INFO L272 TraceCheckUtils]: 19: Hoare triple {1329#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1329#true} is VALID [2022-04-08 11:22:40,455 INFO L290 TraceCheckUtils]: 20: Hoare triple {1329#true} ~cond := #in~cond; {1329#true} is VALID [2022-04-08 11:22:40,455 INFO L290 TraceCheckUtils]: 21: Hoare triple {1329#true} assume !(0 == ~cond); {1329#true} is VALID [2022-04-08 11:22:40,455 INFO L290 TraceCheckUtils]: 22: Hoare triple {1329#true} assume true; {1329#true} is VALID [2022-04-08 11:22:40,455 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1329#true} {1329#true} #81#return; {1329#true} is VALID [2022-04-08 11:22:40,456 INFO L290 TraceCheckUtils]: 24: Hoare triple {1329#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1406#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-08 11:22:40,456 INFO L290 TraceCheckUtils]: 25: Hoare triple {1406#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1406#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-08 11:22:40,456 INFO L290 TraceCheckUtils]: 26: Hoare triple {1406#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} assume !!(#t~post7 < 50);havoc #t~post7; {1406#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-08 11:22:40,457 INFO L272 TraceCheckUtils]: 27: Hoare triple {1406#(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)); {1416#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:40,457 INFO L290 TraceCheckUtils]: 28: Hoare triple {1416#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1420#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:40,458 INFO L290 TraceCheckUtils]: 29: Hoare triple {1420#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1330#false} is VALID [2022-04-08 11:22:40,458 INFO L290 TraceCheckUtils]: 30: Hoare triple {1330#false} assume !false; {1330#false} is VALID [2022-04-08 11:22:40,458 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-08 11:22:40,458 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:40,458 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:40,458 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [221555064] [2022-04-08 11:22:40,458 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:40,458 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [23459731] [2022-04-08 11:22:40,459 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [23459731] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:40,459 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:40,459 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:40,459 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:40,459 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [379329625] [2022-04-08 11:22:40,459 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [379329625] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:40,459 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:40,459 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:40,459 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1014692904] [2022-04-08 11:22:40,459 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:40,460 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-08 11:22:40,460 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:40,460 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-08 11:22:40,476 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-08 11:22:40,476 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:22:40,476 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:40,476 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:22:40,476 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:22:40,477 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-08 11:22:40,645 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:40,646 INFO L93 Difference]: Finished difference Result 83 states and 113 transitions. [2022-04-08 11:22:40,646 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:22:40,646 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-08 11:22:40,646 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:40,646 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-08 11:22:40,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-08 11:22:40,648 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-08 11:22:40,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 72 transitions. [2022-04-08 11:22:40,649 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 72 transitions. [2022-04-08 11:22:40,706 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-08 11:22:40,708 INFO L225 Difference]: With dead ends: 83 [2022-04-08 11:22:40,708 INFO L226 Difference]: Without dead ends: 81 [2022-04-08 11:22:40,708 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-08 11:22:40,708 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-08 11:22:40,709 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-08 11:22:40,709 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-04-08 11:22:40,739 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 74. [2022-04-08 11:22:40,739 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:40,739 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-08 11:22:40,740 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-08 11:22:40,741 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-08 11:22:40,744 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:40,745 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-08 11:22:40,745 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-08 11:22:40,745 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:40,745 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:40,745 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-08 11:22:40,746 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-08 11:22:40,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:40,750 INFO L93 Difference]: Finished difference Result 81 states and 111 transitions. [2022-04-08 11:22:40,750 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 111 transitions. [2022-04-08 11:22:40,750 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:40,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:40,750 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:40,750 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:40,750 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-08 11:22:40,752 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 100 transitions. [2022-04-08 11:22:40,753 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 100 transitions. Word has length 31 [2022-04-08 11:22:40,753 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:40,753 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 100 transitions. [2022-04-08 11:22:40,753 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-08 11:22:40,753 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 74 states and 100 transitions. [2022-04-08 11:22:40,849 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:40,849 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 100 transitions. [2022-04-08 11:22:40,850 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-08 11:22:40,850 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:40,850 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-08 11:22:40,866 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-08 11:22:41,066 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-08 11:22:41,067 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:41,067 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:41,067 INFO L85 PathProgramCache]: Analyzing trace with hash 202176206, now seen corresponding path program 1 times [2022-04-08 11:22:41,067 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:41,067 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [597184717] [2022-04-08 11:22:46,115 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:22:46,115 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:22:46,115 INFO L85 PathProgramCache]: Analyzing trace with hash 202176206, now seen corresponding path program 2 times [2022-04-08 11:22:46,115 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:46,115 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [680556771] [2022-04-08 11:22:46,115 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:46,115 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:46,126 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:46,126 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1849893902] [2022-04-08 11:22:46,126 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:46,126 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:46,126 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:46,139 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-08 11:22:46,140 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-08 11:22:46,172 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:22:46,173 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:46,173 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 11:22:46,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:46,185 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:46,337 INFO L272 TraceCheckUtils]: 0: Hoare triple {1904#true} call ULTIMATE.init(); {1904#true} is VALID [2022-04-08 11:22:46,338 INFO L290 TraceCheckUtils]: 1: Hoare triple {1904#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; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:46,338 INFO L290 TraceCheckUtils]: 2: Hoare triple {1912#(<= ~counter~0 0)} assume true; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:46,338 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1912#(<= ~counter~0 0)} {1904#true} #93#return; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:46,339 INFO L272 TraceCheckUtils]: 4: Hoare triple {1912#(<= ~counter~0 0)} call #t~ret8 := main(); {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:46,339 INFO L290 TraceCheckUtils]: 5: Hoare triple {1912#(<= ~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; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:46,340 INFO L272 TraceCheckUtils]: 6: Hoare triple {1912#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:46,340 INFO L290 TraceCheckUtils]: 7: Hoare triple {1912#(<= ~counter~0 0)} ~cond := #in~cond; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:46,340 INFO L290 TraceCheckUtils]: 8: Hoare triple {1912#(<= ~counter~0 0)} assume !(0 == ~cond); {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:46,341 INFO L290 TraceCheckUtils]: 9: Hoare triple {1912#(<= ~counter~0 0)} assume true; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:46,341 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1912#(<= ~counter~0 0)} {1912#(<= ~counter~0 0)} #77#return; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:46,342 INFO L290 TraceCheckUtils]: 11: Hoare triple {1912#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {1912#(<= ~counter~0 0)} is VALID [2022-04-08 11:22:46,342 INFO L290 TraceCheckUtils]: 12: Hoare triple {1912#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,343 INFO L290 TraceCheckUtils]: 13: Hoare triple {1946#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,343 INFO L272 TraceCheckUtils]: 14: Hoare triple {1946#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,343 INFO L290 TraceCheckUtils]: 15: Hoare triple {1946#(<= ~counter~0 1)} ~cond := #in~cond; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,344 INFO L290 TraceCheckUtils]: 16: Hoare triple {1946#(<= ~counter~0 1)} assume !(0 == ~cond); {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,344 INFO L290 TraceCheckUtils]: 17: Hoare triple {1946#(<= ~counter~0 1)} assume true; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,345 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1946#(<= ~counter~0 1)} {1946#(<= ~counter~0 1)} #79#return; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,345 INFO L272 TraceCheckUtils]: 19: Hoare triple {1946#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,346 INFO L290 TraceCheckUtils]: 20: Hoare triple {1946#(<= ~counter~0 1)} ~cond := #in~cond; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,346 INFO L290 TraceCheckUtils]: 21: Hoare triple {1946#(<= ~counter~0 1)} assume !(0 == ~cond); {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,346 INFO L290 TraceCheckUtils]: 22: Hoare triple {1946#(<= ~counter~0 1)} assume true; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,347 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1946#(<= ~counter~0 1)} {1946#(<= ~counter~0 1)} #81#return; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,347 INFO L290 TraceCheckUtils]: 24: Hoare triple {1946#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {1946#(<= ~counter~0 1)} is VALID [2022-04-08 11:22:46,348 INFO L290 TraceCheckUtils]: 25: Hoare triple {1946#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1986#(<= |main_#t~post7| 1)} is VALID [2022-04-08 11:22:46,348 INFO L290 TraceCheckUtils]: 26: Hoare triple {1986#(<= |main_#t~post7| 1)} assume !(#t~post7 < 50);havoc #t~post7; {1905#false} is VALID [2022-04-08 11:22:46,348 INFO L290 TraceCheckUtils]: 27: Hoare triple {1905#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {1905#false} is VALID [2022-04-08 11:22:46,348 INFO L290 TraceCheckUtils]: 28: Hoare triple {1905#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1905#false} is VALID [2022-04-08 11:22:46,348 INFO L290 TraceCheckUtils]: 29: Hoare triple {1905#false} assume !(#t~post6 < 50);havoc #t~post6; {1905#false} is VALID [2022-04-08 11:22:46,348 INFO L272 TraceCheckUtils]: 30: Hoare triple {1905#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {1905#false} is VALID [2022-04-08 11:22:46,349 INFO L290 TraceCheckUtils]: 31: Hoare triple {1905#false} ~cond := #in~cond; {1905#false} is VALID [2022-04-08 11:22:46,349 INFO L290 TraceCheckUtils]: 32: Hoare triple {1905#false} assume 0 == ~cond; {1905#false} is VALID [2022-04-08 11:22:46,349 INFO L290 TraceCheckUtils]: 33: Hoare triple {1905#false} assume !false; {1905#false} is VALID [2022-04-08 11:22:46,349 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-08 11:22:46,349 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:46,349 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:46,349 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [680556771] [2022-04-08 11:22:46,349 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:46,349 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1849893902] [2022-04-08 11:22:46,349 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1849893902] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:46,350 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:46,350 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:46,350 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:46,350 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [597184717] [2022-04-08 11:22:46,350 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [597184717] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:46,350 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:46,350 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:22:46,350 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [959131265] [2022-04-08 11:22:46,350 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:46,350 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-08 11:22:46,351 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:46,351 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-08 11:22:46,370 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-08 11:22:46,370 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:22:46,370 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:46,371 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:22:46,371 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:22:46,371 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-08 11:22:46,472 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:46,472 INFO L93 Difference]: Finished difference Result 113 states and 153 transitions. [2022-04-08 11:22:46,472 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:22:46,472 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-08 11:22:46,472 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:46,472 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-08 11:22:46,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-08 11:22:46,473 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-08 11:22:46,474 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 85 transitions. [2022-04-08 11:22:46,474 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 85 transitions. [2022-04-08 11:22:46,525 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-08 11:22:46,527 INFO L225 Difference]: With dead ends: 113 [2022-04-08 11:22:46,527 INFO L226 Difference]: Without dead ends: 78 [2022-04-08 11:22:46,528 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-08 11:22:46,528 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 6 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 114 SdHoareTripleChecker+Invalid, 20 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:22:46,529 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 114 Invalid, 20 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:22:46,530 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-08 11:22:46,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-08 11:22:46,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:46,565 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-08 11:22:46,566 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-08 11:22:46,566 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-08 11:22:46,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:46,570 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-08 11:22:46,570 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-08 11:22:46,571 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:46,571 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:46,571 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-08 11:22:46,572 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-08 11:22:46,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:46,575 INFO L93 Difference]: Finished difference Result 78 states and 102 transitions. [2022-04-08 11:22:46,575 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-08 11:22:46,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:46,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:46,576 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:46,576 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:46,577 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-08 11:22:46,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 102 transitions. [2022-04-08 11:22:46,579 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 102 transitions. Word has length 34 [2022-04-08 11:22:46,579 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:46,579 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 102 transitions. [2022-04-08 11:22:46,580 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-08 11:22:46,580 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 78 states and 102 transitions. [2022-04-08 11:22:46,658 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:46,658 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 102 transitions. [2022-04-08 11:22:46,658 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-08 11:22:46,658 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:46,659 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-08 11:22:46,678 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-08 11:22:46,875 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-08 11:22:46,875 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:46,875 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:46,875 INFO L85 PathProgramCache]: Analyzing trace with hash 1813008070, now seen corresponding path program 1 times [2022-04-08 11:22:46,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:46,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1708296250] [2022-04-08 11:22:46,876 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:46,876 INFO L85 PathProgramCache]: Analyzing trace with hash 1813008070, now seen corresponding path program 2 times [2022-04-08 11:22:46,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:46,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [569455500] [2022-04-08 11:22:46,876 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:46,876 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:46,886 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:46,886 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2028549659] [2022-04-08 11:22:46,886 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:46,887 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:46,887 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:46,887 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-08 11:22:46,888 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-08 11:22:46,922 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:22:46,923 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:46,923 INFO L263 TraceCheckSpWp]: Trace formula consists of 132 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:22:46,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:46,933 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:47,117 INFO L272 TraceCheckUtils]: 0: Hoare triple {2548#true} call ULTIMATE.init(); {2548#true} is VALID [2022-04-08 11:22:47,118 INFO L290 TraceCheckUtils]: 1: Hoare triple {2548#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; {2548#true} is VALID [2022-04-08 11:22:47,118 INFO L290 TraceCheckUtils]: 2: Hoare triple {2548#true} assume true; {2548#true} is VALID [2022-04-08 11:22:47,118 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2548#true} {2548#true} #93#return; {2548#true} is VALID [2022-04-08 11:22:47,118 INFO L272 TraceCheckUtils]: 4: Hoare triple {2548#true} call #t~ret8 := main(); {2548#true} is VALID [2022-04-08 11:22:47,118 INFO L290 TraceCheckUtils]: 5: Hoare triple {2548#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; {2548#true} is VALID [2022-04-08 11:22:47,118 INFO L272 TraceCheckUtils]: 6: Hoare triple {2548#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2548#true} is VALID [2022-04-08 11:22:47,118 INFO L290 TraceCheckUtils]: 7: Hoare triple {2548#true} ~cond := #in~cond; {2574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 11:22:47,119 INFO L290 TraceCheckUtils]: 8: Hoare triple {2574#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:22:47,119 INFO L290 TraceCheckUtils]: 9: Hoare triple {2578#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2578#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:22:47,119 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2578#(not (= |assume_abort_if_not_#in~cond| 0))} {2548#true} #77#return; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:47,120 INFO L290 TraceCheckUtils]: 11: Hoare triple {2585#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:47,120 INFO L290 TraceCheckUtils]: 12: Hoare triple {2585#(<= 1 main_~y~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:47,120 INFO L290 TraceCheckUtils]: 13: Hoare triple {2585#(<= 1 main_~y~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:47,120 INFO L272 TraceCheckUtils]: 14: Hoare triple {2585#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2548#true} is VALID [2022-04-08 11:22:47,120 INFO L290 TraceCheckUtils]: 15: Hoare triple {2548#true} ~cond := #in~cond; {2548#true} is VALID [2022-04-08 11:22:47,121 INFO L290 TraceCheckUtils]: 16: Hoare triple {2548#true} assume !(0 == ~cond); {2548#true} is VALID [2022-04-08 11:22:47,121 INFO L290 TraceCheckUtils]: 17: Hoare triple {2548#true} assume true; {2548#true} is VALID [2022-04-08 11:22:47,121 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2548#true} {2585#(<= 1 main_~y~0)} #79#return; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:47,121 INFO L272 TraceCheckUtils]: 19: Hoare triple {2585#(<= 1 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2548#true} is VALID [2022-04-08 11:22:47,121 INFO L290 TraceCheckUtils]: 20: Hoare triple {2548#true} ~cond := #in~cond; {2548#true} is VALID [2022-04-08 11:22:47,121 INFO L290 TraceCheckUtils]: 21: Hoare triple {2548#true} assume !(0 == ~cond); {2548#true} is VALID [2022-04-08 11:22:47,121 INFO L290 TraceCheckUtils]: 22: Hoare triple {2548#true} assume true; {2548#true} is VALID [2022-04-08 11:22:47,122 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2548#true} {2585#(<= 1 main_~y~0)} #81#return; {2585#(<= 1 main_~y~0)} is VALID [2022-04-08 11:22:47,122 INFO L290 TraceCheckUtils]: 24: Hoare triple {2585#(<= 1 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {2628#(<= 1 main_~r~0)} is VALID [2022-04-08 11:22:47,123 INFO L290 TraceCheckUtils]: 25: Hoare triple {2628#(<= 1 main_~r~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2628#(<= 1 main_~r~0)} is VALID [2022-04-08 11:22:47,123 INFO L290 TraceCheckUtils]: 26: Hoare triple {2628#(<= 1 main_~r~0)} assume !!(#t~post7 < 50);havoc #t~post7; {2628#(<= 1 main_~r~0)} is VALID [2022-04-08 11:22:47,123 INFO L272 TraceCheckUtils]: 27: Hoare triple {2628#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {2548#true} is VALID [2022-04-08 11:22:47,123 INFO L290 TraceCheckUtils]: 28: Hoare triple {2548#true} ~cond := #in~cond; {2548#true} is VALID [2022-04-08 11:22:47,123 INFO L290 TraceCheckUtils]: 29: Hoare triple {2548#true} assume !(0 == ~cond); {2548#true} is VALID [2022-04-08 11:22:47,123 INFO L290 TraceCheckUtils]: 30: Hoare triple {2548#true} assume true; {2548#true} is VALID [2022-04-08 11:22:47,124 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2548#true} {2628#(<= 1 main_~r~0)} #83#return; {2628#(<= 1 main_~r~0)} is VALID [2022-04-08 11:22:47,124 INFO L272 TraceCheckUtils]: 32: Hoare triple {2628#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {2548#true} is VALID [2022-04-08 11:22:47,125 INFO L290 TraceCheckUtils]: 33: Hoare triple {2548#true} ~cond := #in~cond; {2548#true} is VALID [2022-04-08 11:22:47,125 INFO L290 TraceCheckUtils]: 34: Hoare triple {2548#true} assume !(0 == ~cond); {2548#true} is VALID [2022-04-08 11:22:47,125 INFO L290 TraceCheckUtils]: 35: Hoare triple {2548#true} assume true; {2548#true} is VALID [2022-04-08 11:22:47,127 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2548#true} {2628#(<= 1 main_~r~0)} #85#return; {2628#(<= 1 main_~r~0)} is VALID [2022-04-08 11:22:47,128 INFO L272 TraceCheckUtils]: 37: Hoare triple {2628#(<= 1 main_~r~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {2668#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:47,128 INFO L290 TraceCheckUtils]: 38: Hoare triple {2668#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2672#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:47,128 INFO L290 TraceCheckUtils]: 39: Hoare triple {2672#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2549#false} is VALID [2022-04-08 11:22:47,129 INFO L290 TraceCheckUtils]: 40: Hoare triple {2549#false} assume !false; {2549#false} is VALID [2022-04-08 11:22:47,129 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-08 11:22:47,129 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:22:47,129 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:47,130 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [569455500] [2022-04-08 11:22:47,130 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:47,130 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2028549659] [2022-04-08 11:22:47,130 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2028549659] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:47,130 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:47,130 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:22:47,130 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:47,130 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1708296250] [2022-04-08 11:22:47,130 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1708296250] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:47,130 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:47,130 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:22:47,130 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1679616226] [2022-04-08 11:22:47,130 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:47,131 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-08 11:22:47,131 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:47,131 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-08 11:22:47,148 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-08 11:22:47,148 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:22:47,149 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:47,149 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:22:47,149 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-08 11:22:47,150 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-08 11:22:47,446 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:47,447 INFO L93 Difference]: Finished difference Result 84 states and 107 transitions. [2022-04-08 11:22:47,447 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 11:22:47,447 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-08 11:22:47,447 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:47,447 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-08 11:22:47,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 11:22:47,448 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-08 11:22:47,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 11:22:47,449 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-08 11:22:47,496 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-08 11:22:47,497 INFO L225 Difference]: With dead ends: 84 [2022-04-08 11:22:47,497 INFO L226 Difference]: Without dead ends: 82 [2022-04-08 11:22:47,498 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-08 11:22:47,498 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-08 11:22:47,498 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-08 11:22:47,499 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-04-08 11:22:47,583 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 82. [2022-04-08 11:22:47,583 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:47,583 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-08 11:22:47,583 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-08 11:22:47,584 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-08 11:22:47,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:47,586 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-08 11:22:47,586 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-08 11:22:47,586 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:47,586 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:47,586 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-08 11:22:47,586 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-08 11:22:47,588 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:47,588 INFO L93 Difference]: Finished difference Result 82 states and 105 transitions. [2022-04-08 11:22:47,589 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-08 11:22:47,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:47,589 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:47,589 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:47,589 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:47,589 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-08 11:22:47,591 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 82 states to 82 states and 105 transitions. [2022-04-08 11:22:47,591 INFO L78 Accepts]: Start accepts. Automaton has 82 states and 105 transitions. Word has length 41 [2022-04-08 11:22:47,591 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:47,591 INFO L478 AbstractCegarLoop]: Abstraction has 82 states and 105 transitions. [2022-04-08 11:22:47,591 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-08 11:22:47,592 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 82 states and 105 transitions. [2022-04-08 11:22:47,679 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:47,679 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 105 transitions. [2022-04-08 11:22:47,680 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-08 11:22:47,680 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:47,680 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-08 11:22:47,696 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-08 11:22:47,891 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-08 11:22:47,891 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:47,892 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:47,892 INFO L85 PathProgramCache]: Analyzing trace with hash -683043127, now seen corresponding path program 1 times [2022-04-08 11:22:47,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:47,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1301477574] [2022-04-08 11:22:47,892 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 11:22:47,892 INFO L85 PathProgramCache]: Analyzing trace with hash -683043127, now seen corresponding path program 2 times [2022-04-08 11:22:47,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:22:47,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [477525033] [2022-04-08 11:22:47,892 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:22:47,892 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:22:47,906 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:22:47,906 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1882747198] [2022-04-08 11:22:47,906 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:22:47,906 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:22:47,906 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:22:47,907 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-08 11:22:47,908 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-08 11:22:47,943 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:22:47,943 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:22:47,944 INFO L263 TraceCheckSpWp]: Trace formula consists of 142 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:22:47,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:22:47,955 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:22:48,112 INFO L272 TraceCheckUtils]: 0: Hoare triple {3180#true} call ULTIMATE.init(); {3180#true} is VALID [2022-04-08 11:22:48,112 INFO L290 TraceCheckUtils]: 1: Hoare triple {3180#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; {3180#true} is VALID [2022-04-08 11:22:48,112 INFO L290 TraceCheckUtils]: 2: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:48,112 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3180#true} {3180#true} #93#return; {3180#true} is VALID [2022-04-08 11:22:48,113 INFO L272 TraceCheckUtils]: 4: Hoare triple {3180#true} call #t~ret8 := main(); {3180#true} is VALID [2022-04-08 11:22:48,113 INFO L290 TraceCheckUtils]: 5: Hoare triple {3180#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; {3180#true} is VALID [2022-04-08 11:22:48,113 INFO L272 TraceCheckUtils]: 6: Hoare triple {3180#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:48,113 INFO L290 TraceCheckUtils]: 7: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:48,113 INFO L290 TraceCheckUtils]: 8: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:48,113 INFO L290 TraceCheckUtils]: 9: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:48,113 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3180#true} {3180#true} #77#return; {3180#true} is VALID [2022-04-08 11:22:48,113 INFO L290 TraceCheckUtils]: 11: Hoare triple {3180#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3180#true} is VALID [2022-04-08 11:22:48,113 INFO L290 TraceCheckUtils]: 12: Hoare triple {3180#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3180#true} is VALID [2022-04-08 11:22:48,113 INFO L290 TraceCheckUtils]: 13: Hoare triple {3180#true} assume !!(#t~post6 < 50);havoc #t~post6; {3180#true} is VALID [2022-04-08 11:22:48,113 INFO L272 TraceCheckUtils]: 14: Hoare triple {3180#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:48,114 INFO L290 TraceCheckUtils]: 15: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:48,114 INFO L290 TraceCheckUtils]: 16: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:48,114 INFO L290 TraceCheckUtils]: 17: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:48,114 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3180#true} {3180#true} #79#return; {3180#true} is VALID [2022-04-08 11:22:48,114 INFO L272 TraceCheckUtils]: 19: Hoare triple {3180#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:48,114 INFO L290 TraceCheckUtils]: 20: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:48,114 INFO L290 TraceCheckUtils]: 21: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:48,114 INFO L290 TraceCheckUtils]: 22: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:48,114 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3180#true} {3180#true} #81#return; {3180#true} is VALID [2022-04-08 11:22:48,114 INFO L290 TraceCheckUtils]: 24: Hoare triple {3180#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3180#true} is VALID [2022-04-08 11:22:48,114 INFO L290 TraceCheckUtils]: 25: Hoare triple {3180#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3180#true} is VALID [2022-04-08 11:22:48,115 INFO L290 TraceCheckUtils]: 26: Hoare triple {3180#true} assume !!(#t~post7 < 50);havoc #t~post7; {3180#true} is VALID [2022-04-08 11:22:48,115 INFO L272 TraceCheckUtils]: 27: Hoare triple {3180#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:48,117 INFO L290 TraceCheckUtils]: 28: Hoare triple {3180#true} ~cond := #in~cond; {3269#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:48,117 INFO L290 TraceCheckUtils]: 29: Hoare triple {3269#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:22:48,117 INFO L290 TraceCheckUtils]: 30: Hoare triple {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:22:48,118 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} {3180#true} #83#return; {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-08 11:22:48,118 INFO L272 TraceCheckUtils]: 32: Hoare triple {3280#(= 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)); {3180#true} is VALID [2022-04-08 11:22:48,118 INFO L290 TraceCheckUtils]: 33: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:48,118 INFO L290 TraceCheckUtils]: 34: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:48,118 INFO L290 TraceCheckUtils]: 35: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:48,119 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3180#true} {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} #85#return; {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-08 11:22:48,119 INFO L272 TraceCheckUtils]: 37: Hoare triple {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:48,119 INFO L290 TraceCheckUtils]: 38: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:48,119 INFO L290 TraceCheckUtils]: 39: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:48,119 INFO L290 TraceCheckUtils]: 40: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:48,119 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3180#true} {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} #87#return; {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-08 11:22:48,120 INFO L290 TraceCheckUtils]: 42: Hoare triple {3280#(= main_~b~0 (* main_~a~0 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {3314#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-08 11:22:48,120 INFO L272 TraceCheckUtils]: 43: Hoare triple {3314#(<= (* 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)); {3318#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:48,121 INFO L290 TraceCheckUtils]: 44: Hoare triple {3318#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3322#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:48,121 INFO L290 TraceCheckUtils]: 45: Hoare triple {3322#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3181#false} is VALID [2022-04-08 11:22:48,121 INFO L290 TraceCheckUtils]: 46: Hoare triple {3181#false} assume !false; {3181#false} is VALID [2022-04-08 11:22:48,122 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-08 11:22:48,122 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:22:56,502 INFO L290 TraceCheckUtils]: 46: Hoare triple {3181#false} assume !false; {3181#false} is VALID [2022-04-08 11:22:56,503 INFO L290 TraceCheckUtils]: 45: Hoare triple {3322#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3181#false} is VALID [2022-04-08 11:22:56,503 INFO L290 TraceCheckUtils]: 44: Hoare triple {3318#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3322#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:22:56,504 INFO L272 TraceCheckUtils]: 43: Hoare triple {3314#(<= (* 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)); {3318#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:22:56,504 INFO L290 TraceCheckUtils]: 42: Hoare triple {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} assume !!(~r~0 >= 2 * ~b~0); {3314#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-08 11:22:56,505 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3180#true} {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #87#return; {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-08 11:22:56,505 INFO L290 TraceCheckUtils]: 40: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:56,505 INFO L290 TraceCheckUtils]: 39: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:56,505 INFO L290 TraceCheckUtils]: 38: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:56,505 INFO L272 TraceCheckUtils]: 37: Hoare triple {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:56,510 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3180#true} {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} #85#return; {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-08 11:22:56,510 INFO L290 TraceCheckUtils]: 35: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:56,510 INFO L290 TraceCheckUtils]: 34: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:56,510 INFO L290 TraceCheckUtils]: 33: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:56,510 INFO L272 TraceCheckUtils]: 32: Hoare triple {3341#(<= (* 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)); {3180#true} is VALID [2022-04-08 11:22:56,511 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} {3180#true} #83#return; {3341#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-08 11:22:56,511 INFO L290 TraceCheckUtils]: 30: Hoare triple {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:22:56,511 INFO L290 TraceCheckUtils]: 29: Hoare triple {3384#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {3273#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:22:56,512 INFO L290 TraceCheckUtils]: 28: Hoare triple {3180#true} ~cond := #in~cond; {3384#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:22:56,512 INFO L272 TraceCheckUtils]: 27: Hoare triple {3180#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:56,512 INFO L290 TraceCheckUtils]: 26: Hoare triple {3180#true} assume !!(#t~post7 < 50);havoc #t~post7; {3180#true} is VALID [2022-04-08 11:22:56,512 INFO L290 TraceCheckUtils]: 25: Hoare triple {3180#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3180#true} is VALID [2022-04-08 11:22:56,512 INFO L290 TraceCheckUtils]: 24: Hoare triple {3180#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {3180#true} is VALID [2022-04-08 11:22:56,512 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3180#true} {3180#true} #81#return; {3180#true} is VALID [2022-04-08 11:22:56,512 INFO L290 TraceCheckUtils]: 22: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:56,512 INFO L290 TraceCheckUtils]: 21: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:56,512 INFO L290 TraceCheckUtils]: 20: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:56,512 INFO L272 TraceCheckUtils]: 19: Hoare triple {3180#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3180#true} {3180#true} #79#return; {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L290 TraceCheckUtils]: 17: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L290 TraceCheckUtils]: 16: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L290 TraceCheckUtils]: 15: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L272 TraceCheckUtils]: 14: Hoare triple {3180#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L290 TraceCheckUtils]: 13: Hoare triple {3180#true} assume !!(#t~post6 < 50);havoc #t~post6; {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L290 TraceCheckUtils]: 12: Hoare triple {3180#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L290 TraceCheckUtils]: 11: Hoare triple {3180#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3180#true} {3180#true} #77#return; {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L290 TraceCheckUtils]: 9: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L290 TraceCheckUtils]: 8: Hoare triple {3180#true} assume !(0 == ~cond); {3180#true} is VALID [2022-04-08 11:22:56,513 INFO L290 TraceCheckUtils]: 7: Hoare triple {3180#true} ~cond := #in~cond; {3180#true} is VALID [2022-04-08 11:22:56,514 INFO L272 TraceCheckUtils]: 6: Hoare triple {3180#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3180#true} is VALID [2022-04-08 11:22:56,514 INFO L290 TraceCheckUtils]: 5: Hoare triple {3180#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; {3180#true} is VALID [2022-04-08 11:22:56,514 INFO L272 TraceCheckUtils]: 4: Hoare triple {3180#true} call #t~ret8 := main(); {3180#true} is VALID [2022-04-08 11:22:56,514 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3180#true} {3180#true} #93#return; {3180#true} is VALID [2022-04-08 11:22:56,514 INFO L290 TraceCheckUtils]: 2: Hoare triple {3180#true} assume true; {3180#true} is VALID [2022-04-08 11:22:56,514 INFO L290 TraceCheckUtils]: 1: Hoare triple {3180#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; {3180#true} is VALID [2022-04-08 11:22:56,514 INFO L272 TraceCheckUtils]: 0: Hoare triple {3180#true} call ULTIMATE.init(); {3180#true} is VALID [2022-04-08 11:22:56,514 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-08 11:22:56,514 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:22:56,515 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [477525033] [2022-04-08 11:22:56,515 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:22:56,515 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1882747198] [2022-04-08 11:22:56,515 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1882747198] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:22:56,515 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:22:56,515 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 11:22:56,515 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:22:56,515 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1301477574] [2022-04-08 11:22:56,515 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1301477574] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:22:56,515 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:22:56,515 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:22:56,515 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [266503363] [2022-04-08 11:22:56,515 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:22:56,516 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-08 11:22:56,516 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:22:56,516 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 11:22:56,539 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:56,540 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:22:56,540 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:56,540 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:22:56,540 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:22:56,540 INFO L87 Difference]: Start difference. First operand 82 states and 105 transitions. Second operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 11:22:56,839 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:56,839 INFO L93 Difference]: Finished difference Result 88 states and 110 transitions. [2022-04-08 11:22:56,839 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 11:22:56,839 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-08 11:22:56,839 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:22:56,839 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 11:22:56,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 11:22:56,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 11:22:56,841 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-08 11:22:56,841 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-08 11:22:56,876 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-08 11:22:56,877 INFO L225 Difference]: With dead ends: 88 [2022-04-08 11:22:56,878 INFO L226 Difference]: Without dead ends: 86 [2022-04-08 11:22:56,878 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-08 11:22:56,878 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 22 mSDsluCounter, 88 mSDsCounter, 0 mSdLazyCounter, 108 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 118 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 108 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:22:56,878 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 115 Invalid, 118 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 108 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:22:56,879 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-08 11:22:56,944 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 86. [2022-04-08 11:22:56,944 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:22:56,944 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-08 11:22:56,944 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-08 11:22:56,944 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-08 11:22:56,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:56,946 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-08 11:22:56,947 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-08 11:22:56,947 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:56,947 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:56,947 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-08 11:22:56,947 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-08 11:22:56,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:22:56,949 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-08 11:22:56,949 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-08 11:22:56,949 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:22:56,949 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:22:56,950 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:22:56,950 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:22:56,950 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-08 11:22:56,952 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 86 states to 86 states and 108 transitions. [2022-04-08 11:22:56,952 INFO L78 Accepts]: Start accepts. Automaton has 86 states and 108 transitions. Word has length 47 [2022-04-08 11:22:56,952 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:22:56,952 INFO L478 AbstractCegarLoop]: Abstraction has 86 states and 108 transitions. [2022-04-08 11:22:56,953 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 11:22:56,953 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 86 states and 108 transitions. [2022-04-08 11:22:57,046 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:22:57,046 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-08 11:22:57,047 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-08 11:22:57,047 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:22:57,047 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-08 11:22:57,063 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-08 11:22:57,251 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-08 11:22:57,251 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:22:57,252 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:22:57,252 INFO L85 PathProgramCache]: Analyzing trace with hash -589126939, now seen corresponding path program 1 times [2022-04-08 11:22:57,252 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:22:57,252 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1899656486] [2022-04-08 11:23:10,515 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:23:10,515 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:23:10,515 INFO L85 PathProgramCache]: Analyzing trace with hash -589126939, now seen corresponding path program 2 times [2022-04-08 11:23:10,515 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:23:10,515 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1212418940] [2022-04-08 11:23:10,515 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:23:10,515 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:23:10,525 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:23:10,525 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1519656778] [2022-04-08 11:23:10,526 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:23:10,526 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:23:10,526 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:23:10,527 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-08 11:23:10,528 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-08 11:23:10,564 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:23:10,564 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:23:10,565 INFO L263 TraceCheckSpWp]: Trace formula consists of 151 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:23:10,577 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:23:10,578 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:23:10,792 INFO L272 TraceCheckUtils]: 0: Hoare triple {3997#true} call ULTIMATE.init(); {3997#true} is VALID [2022-04-08 11:23:10,793 INFO L290 TraceCheckUtils]: 1: Hoare triple {3997#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; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:10,794 INFO L290 TraceCheckUtils]: 2: Hoare triple {4005#(<= ~counter~0 0)} assume true; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:10,794 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4005#(<= ~counter~0 0)} {3997#true} #93#return; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:10,794 INFO L272 TraceCheckUtils]: 4: Hoare triple {4005#(<= ~counter~0 0)} call #t~ret8 := main(); {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:10,795 INFO L290 TraceCheckUtils]: 5: Hoare triple {4005#(<= ~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; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:10,795 INFO L272 TraceCheckUtils]: 6: Hoare triple {4005#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:10,795 INFO L290 TraceCheckUtils]: 7: Hoare triple {4005#(<= ~counter~0 0)} ~cond := #in~cond; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:10,796 INFO L290 TraceCheckUtils]: 8: Hoare triple {4005#(<= ~counter~0 0)} assume !(0 == ~cond); {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:10,796 INFO L290 TraceCheckUtils]: 9: Hoare triple {4005#(<= ~counter~0 0)} assume true; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:10,796 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4005#(<= ~counter~0 0)} {4005#(<= ~counter~0 0)} #77#return; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:10,797 INFO L290 TraceCheckUtils]: 11: Hoare triple {4005#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {4005#(<= ~counter~0 0)} is VALID [2022-04-08 11:23:10,797 INFO L290 TraceCheckUtils]: 12: Hoare triple {4005#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,797 INFO L290 TraceCheckUtils]: 13: Hoare triple {4039#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,798 INFO L272 TraceCheckUtils]: 14: Hoare triple {4039#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,798 INFO L290 TraceCheckUtils]: 15: Hoare triple {4039#(<= ~counter~0 1)} ~cond := #in~cond; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,799 INFO L290 TraceCheckUtils]: 16: Hoare triple {4039#(<= ~counter~0 1)} assume !(0 == ~cond); {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,799 INFO L290 TraceCheckUtils]: 17: Hoare triple {4039#(<= ~counter~0 1)} assume true; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,799 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4039#(<= ~counter~0 1)} {4039#(<= ~counter~0 1)} #79#return; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,800 INFO L272 TraceCheckUtils]: 19: Hoare triple {4039#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,800 INFO L290 TraceCheckUtils]: 20: Hoare triple {4039#(<= ~counter~0 1)} ~cond := #in~cond; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,800 INFO L290 TraceCheckUtils]: 21: Hoare triple {4039#(<= ~counter~0 1)} assume !(0 == ~cond); {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,800 INFO L290 TraceCheckUtils]: 22: Hoare triple {4039#(<= ~counter~0 1)} assume true; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,801 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4039#(<= ~counter~0 1)} {4039#(<= ~counter~0 1)} #81#return; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,801 INFO L290 TraceCheckUtils]: 24: Hoare triple {4039#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {4039#(<= ~counter~0 1)} is VALID [2022-04-08 11:23:10,802 INFO L290 TraceCheckUtils]: 25: Hoare triple {4039#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,802 INFO L290 TraceCheckUtils]: 26: Hoare triple {4079#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,802 INFO L272 TraceCheckUtils]: 27: Hoare triple {4079#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,803 INFO L290 TraceCheckUtils]: 28: Hoare triple {4079#(<= ~counter~0 2)} ~cond := #in~cond; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,803 INFO L290 TraceCheckUtils]: 29: Hoare triple {4079#(<= ~counter~0 2)} assume !(0 == ~cond); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,803 INFO L290 TraceCheckUtils]: 30: Hoare triple {4079#(<= ~counter~0 2)} assume true; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,804 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4079#(<= ~counter~0 2)} {4079#(<= ~counter~0 2)} #83#return; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,804 INFO L272 TraceCheckUtils]: 32: Hoare triple {4079#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,804 INFO L290 TraceCheckUtils]: 33: Hoare triple {4079#(<= ~counter~0 2)} ~cond := #in~cond; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,805 INFO L290 TraceCheckUtils]: 34: Hoare triple {4079#(<= ~counter~0 2)} assume !(0 == ~cond); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,805 INFO L290 TraceCheckUtils]: 35: Hoare triple {4079#(<= ~counter~0 2)} assume true; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,805 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4079#(<= ~counter~0 2)} {4079#(<= ~counter~0 2)} #85#return; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,806 INFO L272 TraceCheckUtils]: 37: Hoare triple {4079#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,806 INFO L290 TraceCheckUtils]: 38: Hoare triple {4079#(<= ~counter~0 2)} ~cond := #in~cond; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,806 INFO L290 TraceCheckUtils]: 39: Hoare triple {4079#(<= ~counter~0 2)} assume !(0 == ~cond); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,812 INFO L290 TraceCheckUtils]: 40: Hoare triple {4079#(<= ~counter~0 2)} assume true; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,813 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4079#(<= ~counter~0 2)} {4079#(<= ~counter~0 2)} #87#return; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,813 INFO L290 TraceCheckUtils]: 42: Hoare triple {4079#(<= ~counter~0 2)} assume !(~r~0 >= 2 * ~b~0); {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,813 INFO L290 TraceCheckUtils]: 43: Hoare triple {4079#(<= ~counter~0 2)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {4079#(<= ~counter~0 2)} is VALID [2022-04-08 11:23:10,814 INFO L290 TraceCheckUtils]: 44: Hoare triple {4079#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4137#(<= |main_#t~post6| 2)} is VALID [2022-04-08 11:23:10,814 INFO L290 TraceCheckUtils]: 45: Hoare triple {4137#(<= |main_#t~post6| 2)} assume !(#t~post6 < 50);havoc #t~post6; {3998#false} is VALID [2022-04-08 11:23:10,814 INFO L272 TraceCheckUtils]: 46: Hoare triple {3998#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3998#false} is VALID [2022-04-08 11:23:10,814 INFO L290 TraceCheckUtils]: 47: Hoare triple {3998#false} ~cond := #in~cond; {3998#false} is VALID [2022-04-08 11:23:10,814 INFO L290 TraceCheckUtils]: 48: Hoare triple {3998#false} assume 0 == ~cond; {3998#false} is VALID [2022-04-08 11:23:10,814 INFO L290 TraceCheckUtils]: 49: Hoare triple {3998#false} assume !false; {3998#false} is VALID [2022-04-08 11:23:10,815 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-08 11:23:10,815 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:23:11,040 INFO L290 TraceCheckUtils]: 49: Hoare triple {3998#false} assume !false; {3998#false} is VALID [2022-04-08 11:23:11,041 INFO L290 TraceCheckUtils]: 48: Hoare triple {3998#false} assume 0 == ~cond; {3998#false} is VALID [2022-04-08 11:23:11,041 INFO L290 TraceCheckUtils]: 47: Hoare triple {3998#false} ~cond := #in~cond; {3998#false} is VALID [2022-04-08 11:23:11,041 INFO L272 TraceCheckUtils]: 46: Hoare triple {3998#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3998#false} is VALID [2022-04-08 11:23:11,041 INFO L290 TraceCheckUtils]: 45: Hoare triple {4165#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {3998#false} is VALID [2022-04-08 11:23:11,042 INFO L290 TraceCheckUtils]: 44: Hoare triple {4169#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4165#(< |main_#t~post6| 50)} is VALID [2022-04-08 11:23:11,042 INFO L290 TraceCheckUtils]: 43: Hoare triple {4169#(< ~counter~0 50)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {4169#(< ~counter~0 50)} is VALID [2022-04-08 11:23:11,042 INFO L290 TraceCheckUtils]: 42: Hoare triple {4169#(< ~counter~0 50)} assume !(~r~0 >= 2 * ~b~0); {4169#(< ~counter~0 50)} is VALID [2022-04-08 11:23:11,042 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3997#true} {4169#(< ~counter~0 50)} #87#return; {4169#(< ~counter~0 50)} is VALID [2022-04-08 11:23:11,043 INFO L290 TraceCheckUtils]: 40: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:11,043 INFO L290 TraceCheckUtils]: 39: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:11,043 INFO L290 TraceCheckUtils]: 38: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:11,043 INFO L272 TraceCheckUtils]: 37: Hoare triple {4169#(< ~counter~0 50)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:11,043 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3997#true} {4169#(< ~counter~0 50)} #85#return; {4169#(< ~counter~0 50)} is VALID [2022-04-08 11:23:11,043 INFO L290 TraceCheckUtils]: 35: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:11,044 INFO L290 TraceCheckUtils]: 34: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:11,044 INFO L290 TraceCheckUtils]: 33: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:11,044 INFO L272 TraceCheckUtils]: 32: Hoare triple {4169#(< ~counter~0 50)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:11,044 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3997#true} {4169#(< ~counter~0 50)} #83#return; {4169#(< ~counter~0 50)} is VALID [2022-04-08 11:23:11,044 INFO L290 TraceCheckUtils]: 30: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:11,044 INFO L290 TraceCheckUtils]: 29: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:11,044 INFO L290 TraceCheckUtils]: 28: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:11,044 INFO L272 TraceCheckUtils]: 27: Hoare triple {4169#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:11,045 INFO L290 TraceCheckUtils]: 26: Hoare triple {4169#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {4169#(< ~counter~0 50)} is VALID [2022-04-08 11:23:11,045 INFO L290 TraceCheckUtils]: 25: Hoare triple {4227#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4169#(< ~counter~0 50)} is VALID [2022-04-08 11:23:11,045 INFO L290 TraceCheckUtils]: 24: Hoare triple {4227#(< ~counter~0 49)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {4227#(< ~counter~0 49)} is VALID [2022-04-08 11:23:11,046 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3997#true} {4227#(< ~counter~0 49)} #81#return; {4227#(< ~counter~0 49)} is VALID [2022-04-08 11:23:11,046 INFO L290 TraceCheckUtils]: 22: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:11,046 INFO L290 TraceCheckUtils]: 21: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:11,046 INFO L290 TraceCheckUtils]: 20: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:11,046 INFO L272 TraceCheckUtils]: 19: Hoare triple {4227#(< ~counter~0 49)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:11,047 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3997#true} {4227#(< ~counter~0 49)} #79#return; {4227#(< ~counter~0 49)} is VALID [2022-04-08 11:23:11,047 INFO L290 TraceCheckUtils]: 17: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:11,047 INFO L290 TraceCheckUtils]: 16: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:11,047 INFO L290 TraceCheckUtils]: 15: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:11,047 INFO L272 TraceCheckUtils]: 14: Hoare triple {4227#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:11,047 INFO L290 TraceCheckUtils]: 13: Hoare triple {4227#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {4227#(< ~counter~0 49)} is VALID [2022-04-08 11:23:11,048 INFO L290 TraceCheckUtils]: 12: Hoare triple {4267#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4227#(< ~counter~0 49)} is VALID [2022-04-08 11:23:11,048 INFO L290 TraceCheckUtils]: 11: Hoare triple {4267#(< ~counter~0 48)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {4267#(< ~counter~0 48)} is VALID [2022-04-08 11:23:11,049 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3997#true} {4267#(< ~counter~0 48)} #77#return; {4267#(< ~counter~0 48)} is VALID [2022-04-08 11:23:11,050 INFO L290 TraceCheckUtils]: 9: Hoare triple {3997#true} assume true; {3997#true} is VALID [2022-04-08 11:23:11,050 INFO L290 TraceCheckUtils]: 8: Hoare triple {3997#true} assume !(0 == ~cond); {3997#true} is VALID [2022-04-08 11:23:11,050 INFO L290 TraceCheckUtils]: 7: Hoare triple {3997#true} ~cond := #in~cond; {3997#true} is VALID [2022-04-08 11:23:11,050 INFO L272 TraceCheckUtils]: 6: Hoare triple {4267#(< ~counter~0 48)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3997#true} is VALID [2022-04-08 11:23:11,053 INFO L290 TraceCheckUtils]: 5: Hoare triple {4267#(< ~counter~0 48)} 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; {4267#(< ~counter~0 48)} is VALID [2022-04-08 11:23:11,055 INFO L272 TraceCheckUtils]: 4: Hoare triple {4267#(< ~counter~0 48)} call #t~ret8 := main(); {4267#(< ~counter~0 48)} is VALID [2022-04-08 11:23:11,055 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4267#(< ~counter~0 48)} {3997#true} #93#return; {4267#(< ~counter~0 48)} is VALID [2022-04-08 11:23:11,056 INFO L290 TraceCheckUtils]: 2: Hoare triple {4267#(< ~counter~0 48)} assume true; {4267#(< ~counter~0 48)} is VALID [2022-04-08 11:23:11,057 INFO L290 TraceCheckUtils]: 1: Hoare triple {3997#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; {4267#(< ~counter~0 48)} is VALID [2022-04-08 11:23:11,057 INFO L272 TraceCheckUtils]: 0: Hoare triple {3997#true} call ULTIMATE.init(); {3997#true} is VALID [2022-04-08 11:23:11,058 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-08 11:23:11,058 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:23:11,058 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1212418940] [2022-04-08 11:23:11,058 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:23:11,058 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1519656778] [2022-04-08 11:23:11,058 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1519656778] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:23:11,058 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:23:11,058 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 11:23:11,060 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:23:11,060 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1899656486] [2022-04-08 11:23:11,060 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1899656486] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:23:11,060 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:23:11,060 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 11:23:11,060 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [706905771] [2022-04-08 11:23:11,060 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:23:11,061 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) Word has length 50 [2022-04-08 11:23:11,061 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:23:11,061 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 11:23:11,090 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:11,090 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 11:23:11,090 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:23:11,090 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 11:23:11,090 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:23:11,090 INFO L87 Difference]: Start difference. First operand 86 states and 108 transitions. Second operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 11:23:11,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:11,328 INFO L93 Difference]: Finished difference Result 115 states and 134 transitions. [2022-04-08 11:23:11,328 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 11:23:11,329 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) Word has length 50 [2022-04-08 11:23:11,329 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:23:11,329 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 11:23:11,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 79 transitions. [2022-04-08 11:23:11,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 11:23:11,338 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 79 transitions. [2022-04-08 11:23:11,338 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 79 transitions. [2022-04-08 11:23:11,391 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:11,392 INFO L225 Difference]: With dead ends: 115 [2022-04-08 11:23:11,392 INFO L226 Difference]: Without dead ends: 108 [2022-04-08 11:23:11,393 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 91 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=42, Invalid=68, Unknown=0, NotChecked=0, Total=110 [2022-04-08 11:23:11,393 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 11 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:23:11,393 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 145 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:23:11,393 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 108 states. [2022-04-08 11:23:11,485 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 108 to 106. [2022-04-08 11:23:11,485 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:23:11,486 INFO L82 GeneralOperation]: Start isEquivalent. First operand 108 states. Second operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 11:23:11,487 INFO L74 IsIncluded]: Start isIncluded. First operand 108 states. Second operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 11:23:11,487 INFO L87 Difference]: Start difference. First operand 108 states. Second operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 11:23:11,490 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:11,490 INFO L93 Difference]: Finished difference Result 108 states and 127 transitions. [2022-04-08 11:23:11,490 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 127 transitions. [2022-04-08 11:23:11,490 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:23:11,490 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:23:11,490 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) Second operand 108 states. [2022-04-08 11:23:11,490 INFO L87 Difference]: Start difference. First operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) Second operand 108 states. [2022-04-08 11:23:11,492 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:11,492 INFO L93 Difference]: Finished difference Result 108 states and 127 transitions. [2022-04-08 11:23:11,492 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 127 transitions. [2022-04-08 11:23:11,492 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:23:11,492 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:23:11,492 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:23:11,493 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:23:11,493 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 68 states have (on average 1.161764705882353) internal successors, (79), 71 states have internal predecessors, (79), 24 states have call successors, (24), 14 states have call predecessors, (24), 13 states have return successors, (22), 20 states have call predecessors, (22), 22 states have call successors, (22) [2022-04-08 11:23:11,494 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 125 transitions. [2022-04-08 11:23:11,494 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 125 transitions. Word has length 50 [2022-04-08 11:23:11,494 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:23:11,495 INFO L478 AbstractCegarLoop]: Abstraction has 106 states and 125 transitions. [2022-04-08 11:23:11,495 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 5 states have call successors, (9), 5 states have call predecessors, (9), 3 states have return successors, (7), 3 states have call predecessors, (7), 4 states have call successors, (7) [2022-04-08 11:23:11,495 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 106 states and 125 transitions. [2022-04-08 11:23:11,619 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:11,619 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 125 transitions. [2022-04-08 11:23:11,619 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-08 11:23:11,619 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:23:11,620 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-08 11:23:11,638 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-08 11:23:11,820 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-08 11:23:11,820 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:23:11,820 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:23:11,820 INFO L85 PathProgramCache]: Analyzing trace with hash -484699953, now seen corresponding path program 1 times [2022-04-08 11:23:11,821 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:23:11,821 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1404627613] [2022-04-08 11:23:26,451 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:23:26,452 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:23:26,452 INFO L85 PathProgramCache]: Analyzing trace with hash -484699953, now seen corresponding path program 2 times [2022-04-08 11:23:26,452 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:23:26,452 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [134303493] [2022-04-08 11:23:26,452 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:23:26,452 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:23:26,462 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:23:26,462 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [144672709] [2022-04-08 11:23:26,462 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:23:26,462 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:23:26,462 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:23:26,467 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-08 11:23:26,471 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-08 11:23:26,506 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:23:26,507 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:23:26,507 INFO L263 TraceCheckSpWp]: Trace formula consists of 160 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 11:23:26,515 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:23:26,516 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:23:26,753 INFO L272 TraceCheckUtils]: 0: Hoare triple {4966#true} call ULTIMATE.init(); {4966#true} is VALID [2022-04-08 11:23:26,753 INFO L290 TraceCheckUtils]: 1: Hoare triple {4966#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; {4966#true} is VALID [2022-04-08 11:23:26,754 INFO L290 TraceCheckUtils]: 2: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:26,754 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4966#true} {4966#true} #93#return; {4966#true} is VALID [2022-04-08 11:23:26,754 INFO L272 TraceCheckUtils]: 4: Hoare triple {4966#true} call #t~ret8 := main(); {4966#true} is VALID [2022-04-08 11:23:26,754 INFO L290 TraceCheckUtils]: 5: Hoare triple {4966#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; {4966#true} is VALID [2022-04-08 11:23:26,754 INFO L272 TraceCheckUtils]: 6: Hoare triple {4966#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4966#true} is VALID [2022-04-08 11:23:26,754 INFO L290 TraceCheckUtils]: 7: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:26,754 INFO L290 TraceCheckUtils]: 8: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:26,754 INFO L290 TraceCheckUtils]: 9: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:26,754 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4966#true} {4966#true} #77#return; {4966#true} is VALID [2022-04-08 11:23:26,754 INFO L290 TraceCheckUtils]: 11: Hoare triple {4966#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:26,755 INFO L290 TraceCheckUtils]: 12: Hoare triple {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:26,755 INFO L290 TraceCheckUtils]: 13: Hoare triple {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:26,755 INFO L272 TraceCheckUtils]: 14: Hoare triple {5004#(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)); {4966#true} is VALID [2022-04-08 11:23:26,755 INFO L290 TraceCheckUtils]: 15: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:26,755 INFO L290 TraceCheckUtils]: 16: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:26,755 INFO L290 TraceCheckUtils]: 17: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:26,759 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4966#true} {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:26,759 INFO L272 TraceCheckUtils]: 19: Hoare triple {5004#(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)); {4966#true} is VALID [2022-04-08 11:23:26,759 INFO L290 TraceCheckUtils]: 20: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:26,759 INFO L290 TraceCheckUtils]: 21: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:26,759 INFO L290 TraceCheckUtils]: 22: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:26,760 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4966#true} {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:26,760 INFO L290 TraceCheckUtils]: 24: Hoare triple {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {5044#(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-08 11:23:26,760 INFO L290 TraceCheckUtils]: 25: Hoare triple {5044#(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; {5044#(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-08 11:23:26,761 INFO L290 TraceCheckUtils]: 26: Hoare triple {5044#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {5044#(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-08 11:23:26,761 INFO L272 TraceCheckUtils]: 27: Hoare triple {5044#(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)); {4966#true} is VALID [2022-04-08 11:23:26,761 INFO L290 TraceCheckUtils]: 28: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:26,761 INFO L290 TraceCheckUtils]: 29: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:26,761 INFO L290 TraceCheckUtils]: 30: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:26,762 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4966#true} {5044#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {5044#(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-08 11:23:26,762 INFO L272 TraceCheckUtils]: 32: Hoare triple {5044#(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)); {4966#true} is VALID [2022-04-08 11:23:26,762 INFO L290 TraceCheckUtils]: 33: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:26,762 INFO L290 TraceCheckUtils]: 34: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:26,762 INFO L290 TraceCheckUtils]: 35: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:26,762 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4966#true} {5044#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {5044#(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-08 11:23:26,763 INFO L272 TraceCheckUtils]: 37: Hoare triple {5044#(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)); {4966#true} is VALID [2022-04-08 11:23:26,763 INFO L290 TraceCheckUtils]: 38: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:26,763 INFO L290 TraceCheckUtils]: 39: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:26,763 INFO L290 TraceCheckUtils]: 40: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:26,763 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4966#true} {5044#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {5044#(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-08 11:23:26,764 INFO L290 TraceCheckUtils]: 42: Hoare triple {5044#(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); {5044#(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-08 11:23:26,764 INFO L290 TraceCheckUtils]: 43: Hoare triple {5044#(and (= main_~a~0 1) (= main_~x~0 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; {5102#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-08 11:23:26,764 INFO L290 TraceCheckUtils]: 44: Hoare triple {5102#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5102#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-08 11:23:26,765 INFO L290 TraceCheckUtils]: 45: Hoare triple {5102#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {5102#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-08 11:23:26,765 INFO L272 TraceCheckUtils]: 46: Hoare triple {5102#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {4966#true} is VALID [2022-04-08 11:23:26,765 INFO L290 TraceCheckUtils]: 47: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:26,765 INFO L290 TraceCheckUtils]: 48: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:26,765 INFO L290 TraceCheckUtils]: 49: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:26,766 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4966#true} {5102#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} #79#return; {5102#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-08 11:23:26,766 INFO L272 TraceCheckUtils]: 51: Hoare triple {5102#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~r~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {5127#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:23:26,767 INFO L290 TraceCheckUtils]: 52: Hoare triple {5127#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5131#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:23:26,767 INFO L290 TraceCheckUtils]: 53: Hoare triple {5131#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4967#false} is VALID [2022-04-08 11:23:26,767 INFO L290 TraceCheckUtils]: 54: Hoare triple {4967#false} assume !false; {4967#false} is VALID [2022-04-08 11:23:26,767 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 12 proven. 4 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-08 11:23:26,767 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:23:44,927 INFO L290 TraceCheckUtils]: 54: Hoare triple {4967#false} assume !false; {4967#false} is VALID [2022-04-08 11:23:44,928 INFO L290 TraceCheckUtils]: 53: Hoare triple {5131#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4967#false} is VALID [2022-04-08 11:23:44,928 INFO L290 TraceCheckUtils]: 52: Hoare triple {5127#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5131#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:23:44,929 INFO L272 TraceCheckUtils]: 51: Hoare triple {5147#(= (+ (* 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)); {5127#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:23:44,930 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4966#true} {5147#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {5147#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:23:44,930 INFO L290 TraceCheckUtils]: 49: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:44,930 INFO L290 TraceCheckUtils]: 48: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:44,930 INFO L290 TraceCheckUtils]: 47: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:44,930 INFO L272 TraceCheckUtils]: 46: Hoare triple {5147#(= (+ (* 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)); {4966#true} is VALID [2022-04-08 11:23:44,931 INFO L290 TraceCheckUtils]: 45: Hoare triple {5147#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 50);havoc #t~post6; {5147#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:23:44,931 INFO L290 TraceCheckUtils]: 44: Hoare triple {5147#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5147#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:23:44,938 INFO L290 TraceCheckUtils]: 43: Hoare triple {5172#(= 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; {5147#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:23:44,938 INFO L290 TraceCheckUtils]: 42: Hoare triple {5172#(= 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); {5172#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:44,939 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4966#true} {5172#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #87#return; {5172#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:44,939 INFO L290 TraceCheckUtils]: 40: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:44,939 INFO L290 TraceCheckUtils]: 39: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:44,939 INFO L290 TraceCheckUtils]: 38: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:44,939 INFO L272 TraceCheckUtils]: 37: Hoare triple {5172#(= 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)); {4966#true} is VALID [2022-04-08 11:23:44,940 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4966#true} {5172#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #85#return; {5172#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:44,940 INFO L290 TraceCheckUtils]: 35: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:44,940 INFO L290 TraceCheckUtils]: 34: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:44,940 INFO L290 TraceCheckUtils]: 33: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:44,940 INFO L272 TraceCheckUtils]: 32: Hoare triple {5172#(= 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)); {4966#true} is VALID [2022-04-08 11:23:44,942 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4966#true} {5172#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #83#return; {5172#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:44,942 INFO L290 TraceCheckUtils]: 30: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:44,943 INFO L290 TraceCheckUtils]: 29: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:44,943 INFO L290 TraceCheckUtils]: 28: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:44,943 INFO L272 TraceCheckUtils]: 27: Hoare triple {5172#(= 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)); {4966#true} is VALID [2022-04-08 11:23:44,943 INFO L290 TraceCheckUtils]: 26: Hoare triple {5172#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {5172#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:44,945 INFO L290 TraceCheckUtils]: 25: Hoare triple {5172#(= 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; {5172#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:44,945 INFO L290 TraceCheckUtils]: 24: Hoare triple {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {5172#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:23:44,946 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4966#true} {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:44,946 INFO L290 TraceCheckUtils]: 22: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:44,946 INFO L290 TraceCheckUtils]: 21: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:44,946 INFO L290 TraceCheckUtils]: 20: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:44,946 INFO L272 TraceCheckUtils]: 19: Hoare triple {5004#(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)); {4966#true} is VALID [2022-04-08 11:23:44,946 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4966#true} {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:44,947 INFO L290 TraceCheckUtils]: 17: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:44,947 INFO L290 TraceCheckUtils]: 16: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:44,947 INFO L290 TraceCheckUtils]: 15: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:44,947 INFO L272 TraceCheckUtils]: 14: Hoare triple {5004#(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)); {4966#true} is VALID [2022-04-08 11:23:44,947 INFO L290 TraceCheckUtils]: 13: Hoare triple {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:44,947 INFO L290 TraceCheckUtils]: 12: Hoare triple {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:44,948 INFO L290 TraceCheckUtils]: 11: Hoare triple {4966#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {5004#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:23:44,948 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4966#true} {4966#true} #77#return; {4966#true} is VALID [2022-04-08 11:23:44,948 INFO L290 TraceCheckUtils]: 9: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:44,948 INFO L290 TraceCheckUtils]: 8: Hoare triple {4966#true} assume !(0 == ~cond); {4966#true} is VALID [2022-04-08 11:23:44,948 INFO L290 TraceCheckUtils]: 7: Hoare triple {4966#true} ~cond := #in~cond; {4966#true} is VALID [2022-04-08 11:23:44,948 INFO L272 TraceCheckUtils]: 6: Hoare triple {4966#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4966#true} is VALID [2022-04-08 11:23:44,948 INFO L290 TraceCheckUtils]: 5: Hoare triple {4966#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; {4966#true} is VALID [2022-04-08 11:23:44,948 INFO L272 TraceCheckUtils]: 4: Hoare triple {4966#true} call #t~ret8 := main(); {4966#true} is VALID [2022-04-08 11:23:44,948 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4966#true} {4966#true} #93#return; {4966#true} is VALID [2022-04-08 11:23:44,948 INFO L290 TraceCheckUtils]: 2: Hoare triple {4966#true} assume true; {4966#true} is VALID [2022-04-08 11:23:44,949 INFO L290 TraceCheckUtils]: 1: Hoare triple {4966#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; {4966#true} is VALID [2022-04-08 11:23:44,949 INFO L272 TraceCheckUtils]: 0: Hoare triple {4966#true} call ULTIMATE.init(); {4966#true} is VALID [2022-04-08 11:23:44,949 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 12 proven. 4 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-08 11:23:44,949 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:23:44,949 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [134303493] [2022-04-08 11:23:44,949 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:23:44,949 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [144672709] [2022-04-08 11:23:44,949 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [144672709] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:23:44,949 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:23:44,949 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-04-08 11:23:44,950 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:23:44,950 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1404627613] [2022-04-08 11:23:44,950 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1404627613] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:23:44,950 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:23:44,950 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 11:23:44,950 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2042904973] [2022-04-08 11:23:44,950 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:23:44,950 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 55 [2022-04-08 11:23:44,951 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:23:44,951 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:44,982 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:44,983 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 11:23:44,983 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:23:44,983 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 11:23:44,983 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=52, Unknown=0, NotChecked=0, Total=72 [2022-04-08 11:23:44,983 INFO L87 Difference]: Start difference. First operand 106 states and 125 transitions. Second operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:45,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:45,534 INFO L93 Difference]: Finished difference Result 134 states and 166 transitions. [2022-04-08 11:23:45,534 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 11:23:45,534 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) Word has length 55 [2022-04-08 11:23:45,534 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:23:45,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:45,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 107 transitions. [2022-04-08 11:23:45,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:45,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 107 transitions. [2022-04-08 11:23:45,536 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 107 transitions. [2022-04-08 11:23:45,613 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:45,615 INFO L225 Difference]: With dead ends: 134 [2022-04-08 11:23:45,615 INFO L226 Difference]: Without dead ends: 131 [2022-04-08 11:23:45,616 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 100 SyntacticMatches, 2 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:23:45,616 INFO L913 BasicCegarLoop]: 60 mSDtfsCounter, 24 mSDsluCounter, 177 mSDsCounter, 0 mSdLazyCounter, 182 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 237 SdHoareTripleChecker+Invalid, 192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 182 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:23:45,616 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 237 Invalid, 192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 182 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:23:45,617 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-08 11:23:45,735 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 127. [2022-04-08 11:23:45,736 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:23:45,736 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:45,737 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:45,737 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:45,740 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:45,740 INFO L93 Difference]: Finished difference Result 131 states and 162 transitions. [2022-04-08 11:23:45,740 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 162 transitions. [2022-04-08 11:23:45,741 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:23:45,741 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:23:45,741 INFO L74 IsIncluded]: Start isIncluded. First operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) Second operand 131 states. [2022-04-08 11:23:45,742 INFO L87 Difference]: Start difference. First operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) Second operand 131 states. [2022-04-08 11:23:45,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:23:45,746 INFO L93 Difference]: Finished difference Result 131 states and 162 transitions. [2022-04-08 11:23:45,746 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 162 transitions. [2022-04-08 11:23:45,746 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:23:45,746 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:23:45,746 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:23:45,746 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:23:45,747 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127 states, 79 states have (on average 1.1898734177215189) internal successors, (94), 82 states have internal predecessors, (94), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 29 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:23:45,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 158 transitions. [2022-04-08 11:23:45,756 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 158 transitions. Word has length 55 [2022-04-08 11:23:45,756 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:23:45,757 INFO L478 AbstractCegarLoop]: Abstraction has 127 states and 158 transitions. [2022-04-08 11:23:45,757 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 4 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:23:45,757 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 127 states and 158 transitions. [2022-04-08 11:23:45,892 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:23:45,892 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 158 transitions. [2022-04-08 11:23:45,892 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-08 11:23:45,892 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:23:45,893 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 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, 1, 1, 1, 1, 1, 1] [2022-04-08 11:23:45,908 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-08 11:23:46,093 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-08 11:23:46,094 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:23:46,094 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:23:46,094 INFO L85 PathProgramCache]: Analyzing trace with hash 765609565, now seen corresponding path program 1 times [2022-04-08 11:23:46,094 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:23:46,094 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [922061520] [2022-04-08 11:24:00,005 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:24:00,005 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:24:00,005 INFO L85 PathProgramCache]: Analyzing trace with hash 765609565, now seen corresponding path program 2 times [2022-04-08 11:24:00,005 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:00,005 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1505381381] [2022-04-08 11:24:00,005 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:00,005 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:00,032 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:00,032 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1012954270] [2022-04-08 11:24:00,032 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:00,032 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:00,032 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:00,040 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-08 11:24:00,043 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-08 11:24:00,086 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:00,087 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:00,087 INFO L263 TraceCheckSpWp]: Trace formula consists of 169 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 11:24:00,095 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:00,097 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:00,311 INFO L272 TraceCheckUtils]: 0: Hoare triple {6090#true} call ULTIMATE.init(); {6090#true} is VALID [2022-04-08 11:24:00,311 INFO L290 TraceCheckUtils]: 1: Hoare triple {6090#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; {6098#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:00,312 INFO L290 TraceCheckUtils]: 2: Hoare triple {6098#(<= ~counter~0 0)} assume true; {6098#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:00,312 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6098#(<= ~counter~0 0)} {6090#true} #93#return; {6098#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:00,312 INFO L272 TraceCheckUtils]: 4: Hoare triple {6098#(<= ~counter~0 0)} call #t~ret8 := main(); {6098#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:00,313 INFO L290 TraceCheckUtils]: 5: Hoare triple {6098#(<= ~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; {6098#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:00,313 INFO L272 TraceCheckUtils]: 6: Hoare triple {6098#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6098#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:00,313 INFO L290 TraceCheckUtils]: 7: Hoare triple {6098#(<= ~counter~0 0)} ~cond := #in~cond; {6098#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:00,314 INFO L290 TraceCheckUtils]: 8: Hoare triple {6098#(<= ~counter~0 0)} assume !(0 == ~cond); {6098#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:00,314 INFO L290 TraceCheckUtils]: 9: Hoare triple {6098#(<= ~counter~0 0)} assume true; {6098#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:00,314 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6098#(<= ~counter~0 0)} {6098#(<= ~counter~0 0)} #77#return; {6098#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:00,316 INFO L290 TraceCheckUtils]: 11: Hoare triple {6098#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {6098#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:00,316 INFO L290 TraceCheckUtils]: 12: Hoare triple {6098#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,316 INFO L290 TraceCheckUtils]: 13: Hoare triple {6132#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,317 INFO L272 TraceCheckUtils]: 14: Hoare triple {6132#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,317 INFO L290 TraceCheckUtils]: 15: Hoare triple {6132#(<= ~counter~0 1)} ~cond := #in~cond; {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,317 INFO L290 TraceCheckUtils]: 16: Hoare triple {6132#(<= ~counter~0 1)} assume !(0 == ~cond); {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,318 INFO L290 TraceCheckUtils]: 17: Hoare triple {6132#(<= ~counter~0 1)} assume true; {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,318 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6132#(<= ~counter~0 1)} {6132#(<= ~counter~0 1)} #79#return; {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,319 INFO L272 TraceCheckUtils]: 19: Hoare triple {6132#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,319 INFO L290 TraceCheckUtils]: 20: Hoare triple {6132#(<= ~counter~0 1)} ~cond := #in~cond; {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,320 INFO L290 TraceCheckUtils]: 21: Hoare triple {6132#(<= ~counter~0 1)} assume !(0 == ~cond); {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,320 INFO L290 TraceCheckUtils]: 22: Hoare triple {6132#(<= ~counter~0 1)} assume true; {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,320 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6132#(<= ~counter~0 1)} {6132#(<= ~counter~0 1)} #81#return; {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,321 INFO L290 TraceCheckUtils]: 24: Hoare triple {6132#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6132#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:00,321 INFO L290 TraceCheckUtils]: 25: Hoare triple {6132#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,321 INFO L290 TraceCheckUtils]: 26: Hoare triple {6172#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,322 INFO L272 TraceCheckUtils]: 27: Hoare triple {6172#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,322 INFO L290 TraceCheckUtils]: 28: Hoare triple {6172#(<= ~counter~0 2)} ~cond := #in~cond; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,322 INFO L290 TraceCheckUtils]: 29: Hoare triple {6172#(<= ~counter~0 2)} assume !(0 == ~cond); {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,323 INFO L290 TraceCheckUtils]: 30: Hoare triple {6172#(<= ~counter~0 2)} assume true; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,323 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6172#(<= ~counter~0 2)} {6172#(<= ~counter~0 2)} #83#return; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,324 INFO L272 TraceCheckUtils]: 32: Hoare triple {6172#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,324 INFO L290 TraceCheckUtils]: 33: Hoare triple {6172#(<= ~counter~0 2)} ~cond := #in~cond; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,324 INFO L290 TraceCheckUtils]: 34: Hoare triple {6172#(<= ~counter~0 2)} assume !(0 == ~cond); {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,324 INFO L290 TraceCheckUtils]: 35: Hoare triple {6172#(<= ~counter~0 2)} assume true; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,325 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6172#(<= ~counter~0 2)} {6172#(<= ~counter~0 2)} #85#return; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,325 INFO L272 TraceCheckUtils]: 37: Hoare triple {6172#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,326 INFO L290 TraceCheckUtils]: 38: Hoare triple {6172#(<= ~counter~0 2)} ~cond := #in~cond; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,326 INFO L290 TraceCheckUtils]: 39: Hoare triple {6172#(<= ~counter~0 2)} assume !(0 == ~cond); {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,326 INFO L290 TraceCheckUtils]: 40: Hoare triple {6172#(<= ~counter~0 2)} assume true; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,326 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6172#(<= ~counter~0 2)} {6172#(<= ~counter~0 2)} #87#return; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,327 INFO L290 TraceCheckUtils]: 42: Hoare triple {6172#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,327 INFO L272 TraceCheckUtils]: 43: Hoare triple {6172#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,327 INFO L290 TraceCheckUtils]: 44: Hoare triple {6172#(<= ~counter~0 2)} ~cond := #in~cond; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,328 INFO L290 TraceCheckUtils]: 45: Hoare triple {6172#(<= ~counter~0 2)} assume !(0 == ~cond); {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,328 INFO L290 TraceCheckUtils]: 46: Hoare triple {6172#(<= ~counter~0 2)} assume true; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,328 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6172#(<= ~counter~0 2)} {6172#(<= ~counter~0 2)} #89#return; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,329 INFO L290 TraceCheckUtils]: 48: Hoare triple {6172#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6172#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:00,329 INFO L290 TraceCheckUtils]: 49: Hoare triple {6172#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6245#(<= |main_#t~post7| 2)} is VALID [2022-04-08 11:24:00,329 INFO L290 TraceCheckUtils]: 50: Hoare triple {6245#(<= |main_#t~post7| 2)} assume !(#t~post7 < 50);havoc #t~post7; {6091#false} is VALID [2022-04-08 11:24:00,329 INFO L290 TraceCheckUtils]: 51: Hoare triple {6091#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {6091#false} is VALID [2022-04-08 11:24:00,330 INFO L290 TraceCheckUtils]: 52: Hoare triple {6091#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6091#false} is VALID [2022-04-08 11:24:00,330 INFO L290 TraceCheckUtils]: 53: Hoare triple {6091#false} assume !(#t~post6 < 50);havoc #t~post6; {6091#false} is VALID [2022-04-08 11:24:00,330 INFO L272 TraceCheckUtils]: 54: Hoare triple {6091#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6091#false} is VALID [2022-04-08 11:24:00,330 INFO L290 TraceCheckUtils]: 55: Hoare triple {6091#false} ~cond := #in~cond; {6091#false} is VALID [2022-04-08 11:24:00,330 INFO L290 TraceCheckUtils]: 56: Hoare triple {6091#false} assume 0 == ~cond; {6091#false} is VALID [2022-04-08 11:24:00,330 INFO L290 TraceCheckUtils]: 57: Hoare triple {6091#false} assume !false; {6091#false} is VALID [2022-04-08 11:24:00,330 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 14 proven. 34 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 11:24:00,330 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:24:00,547 INFO L290 TraceCheckUtils]: 57: Hoare triple {6091#false} assume !false; {6091#false} is VALID [2022-04-08 11:24:00,547 INFO L290 TraceCheckUtils]: 56: Hoare triple {6091#false} assume 0 == ~cond; {6091#false} is VALID [2022-04-08 11:24:00,547 INFO L290 TraceCheckUtils]: 55: Hoare triple {6091#false} ~cond := #in~cond; {6091#false} is VALID [2022-04-08 11:24:00,547 INFO L272 TraceCheckUtils]: 54: Hoare triple {6091#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6091#false} is VALID [2022-04-08 11:24:00,547 INFO L290 TraceCheckUtils]: 53: Hoare triple {6091#false} assume !(#t~post6 < 50);havoc #t~post6; {6091#false} is VALID [2022-04-08 11:24:00,547 INFO L290 TraceCheckUtils]: 52: Hoare triple {6091#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6091#false} is VALID [2022-04-08 11:24:00,547 INFO L290 TraceCheckUtils]: 51: Hoare triple {6091#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {6091#false} is VALID [2022-04-08 11:24:00,548 INFO L290 TraceCheckUtils]: 50: Hoare triple {6291#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {6091#false} is VALID [2022-04-08 11:24:00,548 INFO L290 TraceCheckUtils]: 49: Hoare triple {6295#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6291#(< |main_#t~post7| 50)} is VALID [2022-04-08 11:24:00,548 INFO L290 TraceCheckUtils]: 48: Hoare triple {6295#(< ~counter~0 50)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {6295#(< ~counter~0 50)} is VALID [2022-04-08 11:24:00,549 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6090#true} {6295#(< ~counter~0 50)} #89#return; {6295#(< ~counter~0 50)} is VALID [2022-04-08 11:24:00,549 INFO L290 TraceCheckUtils]: 46: Hoare triple {6090#true} assume true; {6090#true} is VALID [2022-04-08 11:24:00,549 INFO L290 TraceCheckUtils]: 45: Hoare triple {6090#true} assume !(0 == ~cond); {6090#true} is VALID [2022-04-08 11:24:00,549 INFO L290 TraceCheckUtils]: 44: Hoare triple {6090#true} ~cond := #in~cond; {6090#true} is VALID [2022-04-08 11:24:00,549 INFO L272 TraceCheckUtils]: 43: Hoare triple {6295#(< ~counter~0 50)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {6090#true} is VALID [2022-04-08 11:24:00,549 INFO L290 TraceCheckUtils]: 42: Hoare triple {6295#(< ~counter~0 50)} assume !!(~r~0 >= 2 * ~b~0); {6295#(< ~counter~0 50)} is VALID [2022-04-08 11:24:00,551 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6090#true} {6295#(< ~counter~0 50)} #87#return; {6295#(< ~counter~0 50)} is VALID [2022-04-08 11:24:00,551 INFO L290 TraceCheckUtils]: 40: Hoare triple {6090#true} assume true; {6090#true} is VALID [2022-04-08 11:24:00,551 INFO L290 TraceCheckUtils]: 39: Hoare triple {6090#true} assume !(0 == ~cond); {6090#true} is VALID [2022-04-08 11:24:00,551 INFO L290 TraceCheckUtils]: 38: Hoare triple {6090#true} ~cond := #in~cond; {6090#true} is VALID [2022-04-08 11:24:00,551 INFO L272 TraceCheckUtils]: 37: Hoare triple {6295#(< ~counter~0 50)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {6090#true} is VALID [2022-04-08 11:24:00,551 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6090#true} {6295#(< ~counter~0 50)} #85#return; {6295#(< ~counter~0 50)} is VALID [2022-04-08 11:24:00,552 INFO L290 TraceCheckUtils]: 35: Hoare triple {6090#true} assume true; {6090#true} is VALID [2022-04-08 11:24:00,552 INFO L290 TraceCheckUtils]: 34: Hoare triple {6090#true} assume !(0 == ~cond); {6090#true} is VALID [2022-04-08 11:24:00,552 INFO L290 TraceCheckUtils]: 33: Hoare triple {6090#true} ~cond := #in~cond; {6090#true} is VALID [2022-04-08 11:24:00,552 INFO L272 TraceCheckUtils]: 32: Hoare triple {6295#(< ~counter~0 50)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6090#true} is VALID [2022-04-08 11:24:00,552 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {6090#true} {6295#(< ~counter~0 50)} #83#return; {6295#(< ~counter~0 50)} is VALID [2022-04-08 11:24:00,552 INFO L290 TraceCheckUtils]: 30: Hoare triple {6090#true} assume true; {6090#true} is VALID [2022-04-08 11:24:00,552 INFO L290 TraceCheckUtils]: 29: Hoare triple {6090#true} assume !(0 == ~cond); {6090#true} is VALID [2022-04-08 11:24:00,553 INFO L290 TraceCheckUtils]: 28: Hoare triple {6090#true} ~cond := #in~cond; {6090#true} is VALID [2022-04-08 11:24:00,553 INFO L272 TraceCheckUtils]: 27: Hoare triple {6295#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6090#true} is VALID [2022-04-08 11:24:00,553 INFO L290 TraceCheckUtils]: 26: Hoare triple {6295#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {6295#(< ~counter~0 50)} is VALID [2022-04-08 11:24:00,553 INFO L290 TraceCheckUtils]: 25: Hoare triple {6368#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6295#(< ~counter~0 50)} is VALID [2022-04-08 11:24:00,554 INFO L290 TraceCheckUtils]: 24: Hoare triple {6368#(< ~counter~0 49)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {6368#(< ~counter~0 49)} is VALID [2022-04-08 11:24:00,554 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6090#true} {6368#(< ~counter~0 49)} #81#return; {6368#(< ~counter~0 49)} is VALID [2022-04-08 11:24:00,554 INFO L290 TraceCheckUtils]: 22: Hoare triple {6090#true} assume true; {6090#true} is VALID [2022-04-08 11:24:00,554 INFO L290 TraceCheckUtils]: 21: Hoare triple {6090#true} assume !(0 == ~cond); {6090#true} is VALID [2022-04-08 11:24:00,554 INFO L290 TraceCheckUtils]: 20: Hoare triple {6090#true} ~cond := #in~cond; {6090#true} is VALID [2022-04-08 11:24:00,554 INFO L272 TraceCheckUtils]: 19: Hoare triple {6368#(< ~counter~0 49)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {6090#true} is VALID [2022-04-08 11:24:00,555 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6090#true} {6368#(< ~counter~0 49)} #79#return; {6368#(< ~counter~0 49)} is VALID [2022-04-08 11:24:00,555 INFO L290 TraceCheckUtils]: 17: Hoare triple {6090#true} assume true; {6090#true} is VALID [2022-04-08 11:24:00,555 INFO L290 TraceCheckUtils]: 16: Hoare triple {6090#true} assume !(0 == ~cond); {6090#true} is VALID [2022-04-08 11:24:00,555 INFO L290 TraceCheckUtils]: 15: Hoare triple {6090#true} ~cond := #in~cond; {6090#true} is VALID [2022-04-08 11:24:00,555 INFO L272 TraceCheckUtils]: 14: Hoare triple {6368#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {6090#true} is VALID [2022-04-08 11:24:00,555 INFO L290 TraceCheckUtils]: 13: Hoare triple {6368#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {6368#(< ~counter~0 49)} is VALID [2022-04-08 11:24:00,556 INFO L290 TraceCheckUtils]: 12: Hoare triple {6408#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6368#(< ~counter~0 49)} is VALID [2022-04-08 11:24:00,556 INFO L290 TraceCheckUtils]: 11: Hoare triple {6408#(< ~counter~0 48)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {6408#(< ~counter~0 48)} is VALID [2022-04-08 11:24:00,557 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6090#true} {6408#(< ~counter~0 48)} #77#return; {6408#(< ~counter~0 48)} is VALID [2022-04-08 11:24:00,557 INFO L290 TraceCheckUtils]: 9: Hoare triple {6090#true} assume true; {6090#true} is VALID [2022-04-08 11:24:00,557 INFO L290 TraceCheckUtils]: 8: Hoare triple {6090#true} assume !(0 == ~cond); {6090#true} is VALID [2022-04-08 11:24:00,557 INFO L290 TraceCheckUtils]: 7: Hoare triple {6090#true} ~cond := #in~cond; {6090#true} is VALID [2022-04-08 11:24:00,557 INFO L272 TraceCheckUtils]: 6: Hoare triple {6408#(< ~counter~0 48)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6090#true} is VALID [2022-04-08 11:24:00,557 INFO L290 TraceCheckUtils]: 5: Hoare triple {6408#(< ~counter~0 48)} 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; {6408#(< ~counter~0 48)} is VALID [2022-04-08 11:24:00,557 INFO L272 TraceCheckUtils]: 4: Hoare triple {6408#(< ~counter~0 48)} call #t~ret8 := main(); {6408#(< ~counter~0 48)} is VALID [2022-04-08 11:24:00,558 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6408#(< ~counter~0 48)} {6090#true} #93#return; {6408#(< ~counter~0 48)} is VALID [2022-04-08 11:24:00,558 INFO L290 TraceCheckUtils]: 2: Hoare triple {6408#(< ~counter~0 48)} assume true; {6408#(< ~counter~0 48)} is VALID [2022-04-08 11:24:00,558 INFO L290 TraceCheckUtils]: 1: Hoare triple {6090#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; {6408#(< ~counter~0 48)} is VALID [2022-04-08 11:24:00,558 INFO L272 TraceCheckUtils]: 0: Hoare triple {6090#true} call ULTIMATE.init(); {6090#true} is VALID [2022-04-08 11:24:00,559 INFO L134 CoverageAnalysis]: Checked inductivity of 76 backedges. 14 proven. 2 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-08 11:24:00,559 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:00,559 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1505381381] [2022-04-08 11:24:00,559 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:00,559 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1012954270] [2022-04-08 11:24:00,559 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1012954270] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:24:00,559 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:24:00,559 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 11:24:00,559 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:00,559 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [922061520] [2022-04-08 11:24:00,559 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [922061520] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:00,560 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:00,560 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 11:24:00,560 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1174295233] [2022-04-08 11:24:00,560 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:00,560 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) Word has length 58 [2022-04-08 11:24:00,560 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:00,560 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:24:00,589 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-08 11:24:00,589 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 11:24:00,589 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:00,589 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 11:24:00,590 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 11:24:00,590 INFO L87 Difference]: Start difference. First operand 127 states and 158 transitions. Second operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:24:00,835 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:00,835 INFO L93 Difference]: Finished difference Result 173 states and 218 transitions. [2022-04-08 11:24:00,835 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 11:24:00,836 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) Word has length 58 [2022-04-08 11:24:00,836 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:00,836 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:24:00,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 103 transitions. [2022-04-08 11:24:00,837 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:24:00,838 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 103 transitions. [2022-04-08 11:24:00,838 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 103 transitions. [2022-04-08 11:24:00,906 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:00,910 INFO L225 Difference]: With dead ends: 173 [2022-04-08 11:24:00,910 INFO L226 Difference]: Without dead ends: 130 [2022-04-08 11:24:00,911 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 107 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2022-04-08 11:24:00,911 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 118 mSDsCounter, 0 mSdLazyCounter, 36 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 36 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:24:00,911 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 163 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 36 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:24:00,911 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 130 states. [2022-04-08 11:24:01,016 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 130 to 130. [2022-04-08 11:24:01,016 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:01,016 INFO L82 GeneralOperation]: Start isEquivalent. First operand 130 states. Second operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:24:01,016 INFO L74 IsIncluded]: Start isIncluded. First operand 130 states. Second operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:24:01,017 INFO L87 Difference]: Start difference. First operand 130 states. Second operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:24:01,019 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:01,019 INFO L93 Difference]: Finished difference Result 130 states and 161 transitions. [2022-04-08 11:24:01,019 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 161 transitions. [2022-04-08 11:24:01,019 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:01,019 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:01,020 INFO L74 IsIncluded]: Start isIncluded. First operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) Second operand 130 states. [2022-04-08 11:24:01,020 INFO L87 Difference]: Start difference. First operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) Second operand 130 states. [2022-04-08 11:24:01,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:01,022 INFO L93 Difference]: Finished difference Result 130 states and 161 transitions. [2022-04-08 11:24:01,022 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 161 transitions. [2022-04-08 11:24:01,022 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:01,022 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:01,022 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:01,022 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:01,023 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 82 states have (on average 1.1829268292682926) internal successors, (97), 84 states have internal predecessors, (97), 33 states have call successors, (33), 15 states have call predecessors, (33), 14 states have return successors, (31), 30 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-08 11:24:01,024 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 161 transitions. [2022-04-08 11:24:01,025 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 161 transitions. Word has length 58 [2022-04-08 11:24:01,025 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:01,025 INFO L478 AbstractCegarLoop]: Abstraction has 130 states and 161 transitions. [2022-04-08 11:24:01,025 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (10), 5 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 4 states have call successors, (8) [2022-04-08 11:24:01,025 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 130 states and 161 transitions. [2022-04-08 11:24:01,175 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 161 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:01,175 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 161 transitions. [2022-04-08 11:24:01,177 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-08 11:24:01,177 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:01,177 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 3, 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, 1, 1, 1] [2022-04-08 11:24:01,206 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-08 11:24:01,377 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-08 11:24:01,378 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:01,378 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:01,378 INFO L85 PathProgramCache]: Analyzing trace with hash 78053411, now seen corresponding path program 1 times [2022-04-08 11:24:01,378 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:01,378 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1741876050] [2022-04-08 11:24:16,992 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:24:16,992 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:24:16,992 INFO L85 PathProgramCache]: Analyzing trace with hash 78053411, now seen corresponding path program 2 times [2022-04-08 11:24:16,992 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:16,992 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1995627448] [2022-04-08 11:24:16,992 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:16,992 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:17,001 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:17,001 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [631611653] [2022-04-08 11:24:17,001 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:17,002 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:17,002 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:17,002 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-08 11:24:17,003 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-08 11:24:17,046 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:17,046 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:17,047 INFO L263 TraceCheckSpWp]: Trace formula consists of 188 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 11:24:17,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:17,056 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:17,219 INFO L272 TraceCheckUtils]: 0: Hoare triple {7315#true} call ULTIMATE.init(); {7315#true} is VALID [2022-04-08 11:24:17,220 INFO L290 TraceCheckUtils]: 1: Hoare triple {7315#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; {7315#true} is VALID [2022-04-08 11:24:17,220 INFO L290 TraceCheckUtils]: 2: Hoare triple {7315#true} assume true; {7315#true} is VALID [2022-04-08 11:24:17,220 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7315#true} {7315#true} #93#return; {7315#true} is VALID [2022-04-08 11:24:17,220 INFO L272 TraceCheckUtils]: 4: Hoare triple {7315#true} call #t~ret8 := main(); {7315#true} is VALID [2022-04-08 11:24:17,220 INFO L290 TraceCheckUtils]: 5: Hoare triple {7315#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; {7315#true} is VALID [2022-04-08 11:24:17,220 INFO L272 TraceCheckUtils]: 6: Hoare triple {7315#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7315#true} is VALID [2022-04-08 11:24:17,220 INFO L290 TraceCheckUtils]: 7: Hoare triple {7315#true} ~cond := #in~cond; {7315#true} is VALID [2022-04-08 11:24:17,220 INFO L290 TraceCheckUtils]: 8: Hoare triple {7315#true} assume !(0 == ~cond); {7315#true} is VALID [2022-04-08 11:24:17,220 INFO L290 TraceCheckUtils]: 9: Hoare triple {7315#true} assume true; {7315#true} is VALID [2022-04-08 11:24:17,220 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7315#true} {7315#true} #77#return; {7315#true} is VALID [2022-04-08 11:24:17,220 INFO L290 TraceCheckUtils]: 11: Hoare triple {7315#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L290 TraceCheckUtils]: 12: Hoare triple {7315#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L290 TraceCheckUtils]: 13: Hoare triple {7315#true} assume !!(#t~post6 < 50);havoc #t~post6; {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L272 TraceCheckUtils]: 14: Hoare triple {7315#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L290 TraceCheckUtils]: 15: Hoare triple {7315#true} ~cond := #in~cond; {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L290 TraceCheckUtils]: 16: Hoare triple {7315#true} assume !(0 == ~cond); {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L290 TraceCheckUtils]: 17: Hoare triple {7315#true} assume true; {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7315#true} {7315#true} #79#return; {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L272 TraceCheckUtils]: 19: Hoare triple {7315#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L290 TraceCheckUtils]: 20: Hoare triple {7315#true} ~cond := #in~cond; {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L290 TraceCheckUtils]: 21: Hoare triple {7315#true} assume !(0 == ~cond); {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L290 TraceCheckUtils]: 22: Hoare triple {7315#true} assume true; {7315#true} is VALID [2022-04-08 11:24:17,221 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7315#true} {7315#true} #81#return; {7315#true} is VALID [2022-04-08 11:24:17,222 INFO L290 TraceCheckUtils]: 24: Hoare triple {7315#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {7392#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:17,222 INFO L290 TraceCheckUtils]: 25: Hoare triple {7392#(<= main_~b~0 main_~y~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7392#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:17,222 INFO L290 TraceCheckUtils]: 26: Hoare triple {7392#(<= main_~b~0 main_~y~0)} assume !!(#t~post7 < 50);havoc #t~post7; {7392#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:17,222 INFO L272 TraceCheckUtils]: 27: Hoare triple {7392#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7315#true} is VALID [2022-04-08 11:24:17,222 INFO L290 TraceCheckUtils]: 28: Hoare triple {7315#true} ~cond := #in~cond; {7315#true} is VALID [2022-04-08 11:24:17,222 INFO L290 TraceCheckUtils]: 29: Hoare triple {7315#true} assume !(0 == ~cond); {7315#true} is VALID [2022-04-08 11:24:17,223 INFO L290 TraceCheckUtils]: 30: Hoare triple {7315#true} assume true; {7315#true} is VALID [2022-04-08 11:24:17,223 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {7315#true} {7392#(<= main_~b~0 main_~y~0)} #83#return; {7392#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:17,223 INFO L272 TraceCheckUtils]: 32: Hoare triple {7392#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7315#true} is VALID [2022-04-08 11:24:17,223 INFO L290 TraceCheckUtils]: 33: Hoare triple {7315#true} ~cond := #in~cond; {7315#true} is VALID [2022-04-08 11:24:17,223 INFO L290 TraceCheckUtils]: 34: Hoare triple {7315#true} assume !(0 == ~cond); {7315#true} is VALID [2022-04-08 11:24:17,223 INFO L290 TraceCheckUtils]: 35: Hoare triple {7315#true} assume true; {7315#true} is VALID [2022-04-08 11:24:17,224 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7315#true} {7392#(<= main_~b~0 main_~y~0)} #85#return; {7392#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:17,224 INFO L272 TraceCheckUtils]: 37: Hoare triple {7392#(<= main_~b~0 main_~y~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {7315#true} is VALID [2022-04-08 11:24:17,224 INFO L290 TraceCheckUtils]: 38: Hoare triple {7315#true} ~cond := #in~cond; {7315#true} is VALID [2022-04-08 11:24:17,224 INFO L290 TraceCheckUtils]: 39: Hoare triple {7315#true} assume !(0 == ~cond); {7315#true} is VALID [2022-04-08 11:24:17,224 INFO L290 TraceCheckUtils]: 40: Hoare triple {7315#true} assume true; {7315#true} is VALID [2022-04-08 11:24:17,225 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7315#true} {7392#(<= main_~b~0 main_~y~0)} #87#return; {7392#(<= main_~b~0 main_~y~0)} is VALID [2022-04-08 11:24:17,225 INFO L290 TraceCheckUtils]: 42: Hoare triple {7392#(<= main_~b~0 main_~y~0)} assume !(~r~0 >= 2 * ~b~0); {7447#(and (not (<= (* main_~b~0 2) main_~r~0)) (<= main_~b~0 main_~y~0))} is VALID [2022-04-08 11:24:17,226 INFO L290 TraceCheckUtils]: 43: Hoare triple {7447#(and (not (<= (* main_~b~0 2) main_~r~0)) (<= main_~b~0 main_~y~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {7451#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:24:17,226 INFO L290 TraceCheckUtils]: 44: Hoare triple {7451#(< main_~r~0 main_~y~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7451#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:24:17,226 INFO L290 TraceCheckUtils]: 45: Hoare triple {7451#(< main_~r~0 main_~y~0)} assume !!(#t~post6 < 50);havoc #t~post6; {7451#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:24:17,226 INFO L272 TraceCheckUtils]: 46: Hoare triple {7451#(< main_~r~0 main_~y~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {7315#true} is VALID [2022-04-08 11:24:17,226 INFO L290 TraceCheckUtils]: 47: Hoare triple {7315#true} ~cond := #in~cond; {7315#true} is VALID [2022-04-08 11:24:17,226 INFO L290 TraceCheckUtils]: 48: Hoare triple {7315#true} assume !(0 == ~cond); {7315#true} is VALID [2022-04-08 11:24:17,227 INFO L290 TraceCheckUtils]: 49: Hoare triple {7315#true} assume true; {7315#true} is VALID [2022-04-08 11:24:17,227 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {7315#true} {7451#(< main_~r~0 main_~y~0)} #79#return; {7451#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:24:17,227 INFO L272 TraceCheckUtils]: 51: Hoare triple {7451#(< main_~r~0 main_~y~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7315#true} is VALID [2022-04-08 11:24:17,227 INFO L290 TraceCheckUtils]: 52: Hoare triple {7315#true} ~cond := #in~cond; {7315#true} is VALID [2022-04-08 11:24:17,227 INFO L290 TraceCheckUtils]: 53: Hoare triple {7315#true} assume !(0 == ~cond); {7315#true} is VALID [2022-04-08 11:24:17,227 INFO L290 TraceCheckUtils]: 54: Hoare triple {7315#true} assume true; {7315#true} is VALID [2022-04-08 11:24:17,228 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7315#true} {7451#(< main_~r~0 main_~y~0)} #81#return; {7451#(< main_~r~0 main_~y~0)} is VALID [2022-04-08 11:24:17,228 INFO L290 TraceCheckUtils]: 56: Hoare triple {7451#(< main_~r~0 main_~y~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {7316#false} is VALID [2022-04-08 11:24:17,228 INFO L290 TraceCheckUtils]: 57: Hoare triple {7316#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7316#false} is VALID [2022-04-08 11:24:17,228 INFO L290 TraceCheckUtils]: 58: Hoare triple {7316#false} assume !(#t~post7 < 50);havoc #t~post7; {7316#false} is VALID [2022-04-08 11:24:17,228 INFO L290 TraceCheckUtils]: 59: Hoare triple {7316#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {7316#false} is VALID [2022-04-08 11:24:17,229 INFO L290 TraceCheckUtils]: 60: Hoare triple {7316#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7316#false} is VALID [2022-04-08 11:24:17,229 INFO L290 TraceCheckUtils]: 61: Hoare triple {7316#false} assume !(#t~post6 < 50);havoc #t~post6; {7316#false} is VALID [2022-04-08 11:24:17,229 INFO L272 TraceCheckUtils]: 62: Hoare triple {7316#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {7316#false} is VALID [2022-04-08 11:24:17,229 INFO L290 TraceCheckUtils]: 63: Hoare triple {7316#false} ~cond := #in~cond; {7316#false} is VALID [2022-04-08 11:24:17,229 INFO L290 TraceCheckUtils]: 64: Hoare triple {7316#false} assume 0 == ~cond; {7316#false} is VALID [2022-04-08 11:24:17,229 INFO L290 TraceCheckUtils]: 65: Hoare triple {7316#false} assume !false; {7316#false} is VALID [2022-04-08 11:24:17,229 INFO L134 CoverageAnalysis]: Checked inductivity of 110 backedges. 26 proven. 0 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-08 11:24:17,229 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:24:17,229 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:17,229 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1995627448] [2022-04-08 11:24:17,229 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:17,230 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [631611653] [2022-04-08 11:24:17,230 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [631611653] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:17,230 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:17,230 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:24:17,230 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:17,230 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1741876050] [2022-04-08 11:24:17,230 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1741876050] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:17,230 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:17,230 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:24:17,230 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1013306261] [2022-04-08 11:24:17,230 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:17,231 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-08 11:24:17,231 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:17,231 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 11:24:17,260 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:17,260 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:24:17,261 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:17,261 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:24:17,261 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:24:17,261 INFO L87 Difference]: Start difference. First operand 130 states and 161 transitions. Second operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 11:24:17,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:17,540 INFO L93 Difference]: Finished difference Result 190 states and 240 transitions. [2022-04-08 11:24:17,540 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 11:24:17,540 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-08 11:24:17,540 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:17,540 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 11:24:17,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 109 transitions. [2022-04-08 11:24:17,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 11:24:17,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 109 transitions. [2022-04-08 11:24:17,542 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 109 transitions. [2022-04-08 11:24:17,615 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:17,617 INFO L225 Difference]: With dead ends: 190 [2022-04-08 11:24:17,617 INFO L226 Difference]: Without dead ends: 119 [2022-04-08 11:24:17,618 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 63 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-08 11:24:17,618 INFO L913 BasicCegarLoop]: 56 mSDtfsCounter, 11 mSDsluCounter, 64 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 120 SdHoareTripleChecker+Invalid, 72 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:24:17,618 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 120 Invalid, 72 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:24:17,619 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-04-08 11:24:17,744 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 112. [2022-04-08 11:24:17,744 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:17,744 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 11:24:17,744 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 11:24:17,745 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 11:24:17,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:17,747 INFO L93 Difference]: Finished difference Result 119 states and 143 transitions. [2022-04-08 11:24:17,747 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 143 transitions. [2022-04-08 11:24:17,747 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:17,747 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:17,747 INFO L74 IsIncluded]: Start isIncluded. First operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 119 states. [2022-04-08 11:24:17,747 INFO L87 Difference]: Start difference. First operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) Second operand 119 states. [2022-04-08 11:24:17,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:17,749 INFO L93 Difference]: Finished difference Result 119 states and 143 transitions. [2022-04-08 11:24:17,749 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 143 transitions. [2022-04-08 11:24:17,750 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:17,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:17,750 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:17,750 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:17,750 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 112 states, 72 states have (on average 1.1527777777777777) internal successors, (83), 74 states have internal predecessors, (83), 26 states have call successors, (26), 14 states have call predecessors, (26), 13 states have return successors, (24), 23 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-08 11:24:17,752 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 133 transitions. [2022-04-08 11:24:17,752 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 133 transitions. Word has length 66 [2022-04-08 11:24:17,752 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:17,752 INFO L478 AbstractCegarLoop]: Abstraction has 112 states and 133 transitions. [2022-04-08 11:24:17,752 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 4 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 11:24:17,752 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 112 states and 133 transitions. [2022-04-08 11:24:17,885 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:17,885 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 133 transitions. [2022-04-08 11:24:17,886 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2022-04-08 11:24:17,886 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:17,886 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 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, 1, 1, 1, 1, 1, 1] [2022-04-08 11:24:17,916 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-08 11:24:18,086 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-08 11:24:18,086 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:18,087 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:18,087 INFO L85 PathProgramCache]: Analyzing trace with hash -1361251212, now seen corresponding path program 1 times [2022-04-08 11:24:18,087 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:18,087 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1822068098] [2022-04-08 11:24:35,365 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:24:35,365 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:24:35,365 INFO L85 PathProgramCache]: Analyzing trace with hash -1361251212, now seen corresponding path program 2 times [2022-04-08 11:24:35,366 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:35,366 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [812107072] [2022-04-08 11:24:35,366 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:35,366 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:35,375 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:35,375 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [988861459] [2022-04-08 11:24:35,375 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:35,375 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:35,375 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:35,376 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:24:35,377 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-08 11:24:35,433 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:35,433 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:35,434 INFO L263 TraceCheckSpWp]: Trace formula consists of 197 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 11:24:35,448 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:35,449 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:24:35,742 INFO L272 TraceCheckUtils]: 0: Hoare triple {8362#true} call ULTIMATE.init(); {8362#true} is VALID [2022-04-08 11:24:35,742 INFO L290 TraceCheckUtils]: 1: Hoare triple {8362#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; {8370#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:35,742 INFO L290 TraceCheckUtils]: 2: Hoare triple {8370#(<= ~counter~0 0)} assume true; {8370#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:35,743 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8370#(<= ~counter~0 0)} {8362#true} #93#return; {8370#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:35,743 INFO L272 TraceCheckUtils]: 4: Hoare triple {8370#(<= ~counter~0 0)} call #t~ret8 := main(); {8370#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:35,743 INFO L290 TraceCheckUtils]: 5: Hoare triple {8370#(<= ~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; {8370#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:35,744 INFO L272 TraceCheckUtils]: 6: Hoare triple {8370#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8370#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:35,744 INFO L290 TraceCheckUtils]: 7: Hoare triple {8370#(<= ~counter~0 0)} ~cond := #in~cond; {8370#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:35,744 INFO L290 TraceCheckUtils]: 8: Hoare triple {8370#(<= ~counter~0 0)} assume !(0 == ~cond); {8370#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:35,745 INFO L290 TraceCheckUtils]: 9: Hoare triple {8370#(<= ~counter~0 0)} assume true; {8370#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:35,745 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8370#(<= ~counter~0 0)} {8370#(<= ~counter~0 0)} #77#return; {8370#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:35,745 INFO L290 TraceCheckUtils]: 11: Hoare triple {8370#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8370#(<= ~counter~0 0)} is VALID [2022-04-08 11:24:35,746 INFO L290 TraceCheckUtils]: 12: Hoare triple {8370#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,746 INFO L290 TraceCheckUtils]: 13: Hoare triple {8404#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,747 INFO L272 TraceCheckUtils]: 14: Hoare triple {8404#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,748 INFO L290 TraceCheckUtils]: 15: Hoare triple {8404#(<= ~counter~0 1)} ~cond := #in~cond; {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,748 INFO L290 TraceCheckUtils]: 16: Hoare triple {8404#(<= ~counter~0 1)} assume !(0 == ~cond); {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,751 INFO L290 TraceCheckUtils]: 17: Hoare triple {8404#(<= ~counter~0 1)} assume true; {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,751 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8404#(<= ~counter~0 1)} {8404#(<= ~counter~0 1)} #79#return; {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,752 INFO L272 TraceCheckUtils]: 19: Hoare triple {8404#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,752 INFO L290 TraceCheckUtils]: 20: Hoare triple {8404#(<= ~counter~0 1)} ~cond := #in~cond; {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,752 INFO L290 TraceCheckUtils]: 21: Hoare triple {8404#(<= ~counter~0 1)} assume !(0 == ~cond); {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,752 INFO L290 TraceCheckUtils]: 22: Hoare triple {8404#(<= ~counter~0 1)} assume true; {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,753 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8404#(<= ~counter~0 1)} {8404#(<= ~counter~0 1)} #81#return; {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,753 INFO L290 TraceCheckUtils]: 24: Hoare triple {8404#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8404#(<= ~counter~0 1)} is VALID [2022-04-08 11:24:35,754 INFO L290 TraceCheckUtils]: 25: Hoare triple {8404#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,754 INFO L290 TraceCheckUtils]: 26: Hoare triple {8444#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,754 INFO L272 TraceCheckUtils]: 27: Hoare triple {8444#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,755 INFO L290 TraceCheckUtils]: 28: Hoare triple {8444#(<= ~counter~0 2)} ~cond := #in~cond; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,755 INFO L290 TraceCheckUtils]: 29: Hoare triple {8444#(<= ~counter~0 2)} assume !(0 == ~cond); {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,755 INFO L290 TraceCheckUtils]: 30: Hoare triple {8444#(<= ~counter~0 2)} assume true; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,756 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8444#(<= ~counter~0 2)} {8444#(<= ~counter~0 2)} #83#return; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,756 INFO L272 TraceCheckUtils]: 32: Hoare triple {8444#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,756 INFO L290 TraceCheckUtils]: 33: Hoare triple {8444#(<= ~counter~0 2)} ~cond := #in~cond; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,757 INFO L290 TraceCheckUtils]: 34: Hoare triple {8444#(<= ~counter~0 2)} assume !(0 == ~cond); {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,757 INFO L290 TraceCheckUtils]: 35: Hoare triple {8444#(<= ~counter~0 2)} assume true; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,757 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8444#(<= ~counter~0 2)} {8444#(<= ~counter~0 2)} #85#return; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,758 INFO L272 TraceCheckUtils]: 37: Hoare triple {8444#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,758 INFO L290 TraceCheckUtils]: 38: Hoare triple {8444#(<= ~counter~0 2)} ~cond := #in~cond; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,758 INFO L290 TraceCheckUtils]: 39: Hoare triple {8444#(<= ~counter~0 2)} assume !(0 == ~cond); {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,758 INFO L290 TraceCheckUtils]: 40: Hoare triple {8444#(<= ~counter~0 2)} assume true; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,759 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8444#(<= ~counter~0 2)} {8444#(<= ~counter~0 2)} #87#return; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,759 INFO L290 TraceCheckUtils]: 42: Hoare triple {8444#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,759 INFO L272 TraceCheckUtils]: 43: Hoare triple {8444#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,760 INFO L290 TraceCheckUtils]: 44: Hoare triple {8444#(<= ~counter~0 2)} ~cond := #in~cond; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,760 INFO L290 TraceCheckUtils]: 45: Hoare triple {8444#(<= ~counter~0 2)} assume !(0 == ~cond); {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,760 INFO L290 TraceCheckUtils]: 46: Hoare triple {8444#(<= ~counter~0 2)} assume true; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,761 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8444#(<= ~counter~0 2)} {8444#(<= ~counter~0 2)} #89#return; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,761 INFO L290 TraceCheckUtils]: 48: Hoare triple {8444#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8444#(<= ~counter~0 2)} is VALID [2022-04-08 11:24:35,761 INFO L290 TraceCheckUtils]: 49: Hoare triple {8444#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,762 INFO L290 TraceCheckUtils]: 50: Hoare triple {8517#(<= ~counter~0 3)} assume !!(#t~post7 < 50);havoc #t~post7; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,762 INFO L272 TraceCheckUtils]: 51: Hoare triple {8517#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,762 INFO L290 TraceCheckUtils]: 52: Hoare triple {8517#(<= ~counter~0 3)} ~cond := #in~cond; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,763 INFO L290 TraceCheckUtils]: 53: Hoare triple {8517#(<= ~counter~0 3)} assume !(0 == ~cond); {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,763 INFO L290 TraceCheckUtils]: 54: Hoare triple {8517#(<= ~counter~0 3)} assume true; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,763 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8517#(<= ~counter~0 3)} {8517#(<= ~counter~0 3)} #83#return; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,764 INFO L272 TraceCheckUtils]: 56: Hoare triple {8517#(<= ~counter~0 3)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,764 INFO L290 TraceCheckUtils]: 57: Hoare triple {8517#(<= ~counter~0 3)} ~cond := #in~cond; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,764 INFO L290 TraceCheckUtils]: 58: Hoare triple {8517#(<= ~counter~0 3)} assume !(0 == ~cond); {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,764 INFO L290 TraceCheckUtils]: 59: Hoare triple {8517#(<= ~counter~0 3)} assume true; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,765 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8517#(<= ~counter~0 3)} {8517#(<= ~counter~0 3)} #85#return; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,765 INFO L272 TraceCheckUtils]: 61: Hoare triple {8517#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,766 INFO L290 TraceCheckUtils]: 62: Hoare triple {8517#(<= ~counter~0 3)} ~cond := #in~cond; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,766 INFO L290 TraceCheckUtils]: 63: Hoare triple {8517#(<= ~counter~0 3)} assume !(0 == ~cond); {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,766 INFO L290 TraceCheckUtils]: 64: Hoare triple {8517#(<= ~counter~0 3)} assume true; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,766 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {8517#(<= ~counter~0 3)} {8517#(<= ~counter~0 3)} #87#return; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,767 INFO L290 TraceCheckUtils]: 66: Hoare triple {8517#(<= ~counter~0 3)} assume !(~r~0 >= 2 * ~b~0); {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,767 INFO L290 TraceCheckUtils]: 67: Hoare triple {8517#(<= ~counter~0 3)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8517#(<= ~counter~0 3)} is VALID [2022-04-08 11:24:35,767 INFO L290 TraceCheckUtils]: 68: Hoare triple {8517#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8575#(<= |main_#t~post6| 3)} is VALID [2022-04-08 11:24:35,768 INFO L290 TraceCheckUtils]: 69: Hoare triple {8575#(<= |main_#t~post6| 3)} assume !(#t~post6 < 50);havoc #t~post6; {8363#false} is VALID [2022-04-08 11:24:35,768 INFO L272 TraceCheckUtils]: 70: Hoare triple {8363#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8363#false} is VALID [2022-04-08 11:24:35,768 INFO L290 TraceCheckUtils]: 71: Hoare triple {8363#false} ~cond := #in~cond; {8363#false} is VALID [2022-04-08 11:24:35,768 INFO L290 TraceCheckUtils]: 72: Hoare triple {8363#false} assume 0 == ~cond; {8363#false} is VALID [2022-04-08 11:24:35,768 INFO L290 TraceCheckUtils]: 73: Hoare triple {8363#false} assume !false; {8363#false} is VALID [2022-04-08 11:24:35,768 INFO L134 CoverageAnalysis]: Checked inductivity of 170 backedges. 18 proven. 112 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-08 11:24:35,768 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:24:36,052 INFO L290 TraceCheckUtils]: 73: Hoare triple {8363#false} assume !false; {8363#false} is VALID [2022-04-08 11:24:36,053 INFO L290 TraceCheckUtils]: 72: Hoare triple {8363#false} assume 0 == ~cond; {8363#false} is VALID [2022-04-08 11:24:36,053 INFO L290 TraceCheckUtils]: 71: Hoare triple {8363#false} ~cond := #in~cond; {8363#false} is VALID [2022-04-08 11:24:36,053 INFO L272 TraceCheckUtils]: 70: Hoare triple {8363#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8363#false} is VALID [2022-04-08 11:24:36,053 INFO L290 TraceCheckUtils]: 69: Hoare triple {8603#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {8363#false} is VALID [2022-04-08 11:24:36,053 INFO L290 TraceCheckUtils]: 68: Hoare triple {8607#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8603#(< |main_#t~post6| 50)} is VALID [2022-04-08 11:24:36,054 INFO L290 TraceCheckUtils]: 67: Hoare triple {8607#(< ~counter~0 50)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {8607#(< ~counter~0 50)} is VALID [2022-04-08 11:24:36,054 INFO L290 TraceCheckUtils]: 66: Hoare triple {8607#(< ~counter~0 50)} assume !(~r~0 >= 2 * ~b~0); {8607#(< ~counter~0 50)} is VALID [2022-04-08 11:24:36,054 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {8362#true} {8607#(< ~counter~0 50)} #87#return; {8607#(< ~counter~0 50)} is VALID [2022-04-08 11:24:36,054 INFO L290 TraceCheckUtils]: 64: Hoare triple {8362#true} assume true; {8362#true} is VALID [2022-04-08 11:24:36,054 INFO L290 TraceCheckUtils]: 63: Hoare triple {8362#true} assume !(0 == ~cond); {8362#true} is VALID [2022-04-08 11:24:36,055 INFO L290 TraceCheckUtils]: 62: Hoare triple {8362#true} ~cond := #in~cond; {8362#true} is VALID [2022-04-08 11:24:36,055 INFO L272 TraceCheckUtils]: 61: Hoare triple {8607#(< ~counter~0 50)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8362#true} is VALID [2022-04-08 11:24:36,055 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8362#true} {8607#(< ~counter~0 50)} #85#return; {8607#(< ~counter~0 50)} is VALID [2022-04-08 11:24:36,055 INFO L290 TraceCheckUtils]: 59: Hoare triple {8362#true} assume true; {8362#true} is VALID [2022-04-08 11:24:36,055 INFO L290 TraceCheckUtils]: 58: Hoare triple {8362#true} assume !(0 == ~cond); {8362#true} is VALID [2022-04-08 11:24:36,055 INFO L290 TraceCheckUtils]: 57: Hoare triple {8362#true} ~cond := #in~cond; {8362#true} is VALID [2022-04-08 11:24:36,055 INFO L272 TraceCheckUtils]: 56: Hoare triple {8607#(< ~counter~0 50)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8362#true} is VALID [2022-04-08 11:24:36,056 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8362#true} {8607#(< ~counter~0 50)} #83#return; {8607#(< ~counter~0 50)} is VALID [2022-04-08 11:24:36,056 INFO L290 TraceCheckUtils]: 54: Hoare triple {8362#true} assume true; {8362#true} is VALID [2022-04-08 11:24:36,056 INFO L290 TraceCheckUtils]: 53: Hoare triple {8362#true} assume !(0 == ~cond); {8362#true} is VALID [2022-04-08 11:24:36,056 INFO L290 TraceCheckUtils]: 52: Hoare triple {8362#true} ~cond := #in~cond; {8362#true} is VALID [2022-04-08 11:24:36,056 INFO L272 TraceCheckUtils]: 51: Hoare triple {8607#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8362#true} is VALID [2022-04-08 11:24:36,056 INFO L290 TraceCheckUtils]: 50: Hoare triple {8607#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {8607#(< ~counter~0 50)} is VALID [2022-04-08 11:24:36,057 INFO L290 TraceCheckUtils]: 49: Hoare triple {8665#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8607#(< ~counter~0 50)} is VALID [2022-04-08 11:24:36,057 INFO L290 TraceCheckUtils]: 48: Hoare triple {8665#(< ~counter~0 49)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {8665#(< ~counter~0 49)} is VALID [2022-04-08 11:24:36,058 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8362#true} {8665#(< ~counter~0 49)} #89#return; {8665#(< ~counter~0 49)} is VALID [2022-04-08 11:24:36,058 INFO L290 TraceCheckUtils]: 46: Hoare triple {8362#true} assume true; {8362#true} is VALID [2022-04-08 11:24:36,058 INFO L290 TraceCheckUtils]: 45: Hoare triple {8362#true} assume !(0 == ~cond); {8362#true} is VALID [2022-04-08 11:24:36,058 INFO L290 TraceCheckUtils]: 44: Hoare triple {8362#true} ~cond := #in~cond; {8362#true} is VALID [2022-04-08 11:24:36,058 INFO L272 TraceCheckUtils]: 43: Hoare triple {8665#(< ~counter~0 49)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {8362#true} is VALID [2022-04-08 11:24:36,058 INFO L290 TraceCheckUtils]: 42: Hoare triple {8665#(< ~counter~0 49)} assume !!(~r~0 >= 2 * ~b~0); {8665#(< ~counter~0 49)} is VALID [2022-04-08 11:24:36,059 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8362#true} {8665#(< ~counter~0 49)} #87#return; {8665#(< ~counter~0 49)} is VALID [2022-04-08 11:24:36,059 INFO L290 TraceCheckUtils]: 40: Hoare triple {8362#true} assume true; {8362#true} is VALID [2022-04-08 11:24:36,059 INFO L290 TraceCheckUtils]: 39: Hoare triple {8362#true} assume !(0 == ~cond); {8362#true} is VALID [2022-04-08 11:24:36,059 INFO L290 TraceCheckUtils]: 38: Hoare triple {8362#true} ~cond := #in~cond; {8362#true} is VALID [2022-04-08 11:24:36,059 INFO L272 TraceCheckUtils]: 37: Hoare triple {8665#(< ~counter~0 49)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {8362#true} is VALID [2022-04-08 11:24:36,059 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8362#true} {8665#(< ~counter~0 49)} #85#return; {8665#(< ~counter~0 49)} is VALID [2022-04-08 11:24:36,059 INFO L290 TraceCheckUtils]: 35: Hoare triple {8362#true} assume true; {8362#true} is VALID [2022-04-08 11:24:36,059 INFO L290 TraceCheckUtils]: 34: Hoare triple {8362#true} assume !(0 == ~cond); {8362#true} is VALID [2022-04-08 11:24:36,060 INFO L290 TraceCheckUtils]: 33: Hoare triple {8362#true} ~cond := #in~cond; {8362#true} is VALID [2022-04-08 11:24:36,060 INFO L272 TraceCheckUtils]: 32: Hoare triple {8665#(< ~counter~0 49)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8362#true} is VALID [2022-04-08 11:24:36,060 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {8362#true} {8665#(< ~counter~0 49)} #83#return; {8665#(< ~counter~0 49)} is VALID [2022-04-08 11:24:36,060 INFO L290 TraceCheckUtils]: 30: Hoare triple {8362#true} assume true; {8362#true} is VALID [2022-04-08 11:24:36,060 INFO L290 TraceCheckUtils]: 29: Hoare triple {8362#true} assume !(0 == ~cond); {8362#true} is VALID [2022-04-08 11:24:36,060 INFO L290 TraceCheckUtils]: 28: Hoare triple {8362#true} ~cond := #in~cond; {8362#true} is VALID [2022-04-08 11:24:36,060 INFO L272 TraceCheckUtils]: 27: Hoare triple {8665#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8362#true} is VALID [2022-04-08 11:24:36,061 INFO L290 TraceCheckUtils]: 26: Hoare triple {8665#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {8665#(< ~counter~0 49)} is VALID [2022-04-08 11:24:36,061 INFO L290 TraceCheckUtils]: 25: Hoare triple {8738#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8665#(< ~counter~0 49)} is VALID [2022-04-08 11:24:36,061 INFO L290 TraceCheckUtils]: 24: Hoare triple {8738#(< ~counter~0 48)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {8738#(< ~counter~0 48)} is VALID [2022-04-08 11:24:36,062 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8362#true} {8738#(< ~counter~0 48)} #81#return; {8738#(< ~counter~0 48)} is VALID [2022-04-08 11:24:36,062 INFO L290 TraceCheckUtils]: 22: Hoare triple {8362#true} assume true; {8362#true} is VALID [2022-04-08 11:24:36,062 INFO L290 TraceCheckUtils]: 21: Hoare triple {8362#true} assume !(0 == ~cond); {8362#true} is VALID [2022-04-08 11:24:36,062 INFO L290 TraceCheckUtils]: 20: Hoare triple {8362#true} ~cond := #in~cond; {8362#true} is VALID [2022-04-08 11:24:36,062 INFO L272 TraceCheckUtils]: 19: Hoare triple {8738#(< ~counter~0 48)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {8362#true} is VALID [2022-04-08 11:24:36,063 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8362#true} {8738#(< ~counter~0 48)} #79#return; {8738#(< ~counter~0 48)} is VALID [2022-04-08 11:24:36,063 INFO L290 TraceCheckUtils]: 17: Hoare triple {8362#true} assume true; {8362#true} is VALID [2022-04-08 11:24:36,063 INFO L290 TraceCheckUtils]: 16: Hoare triple {8362#true} assume !(0 == ~cond); {8362#true} is VALID [2022-04-08 11:24:36,063 INFO L290 TraceCheckUtils]: 15: Hoare triple {8362#true} ~cond := #in~cond; {8362#true} is VALID [2022-04-08 11:24:36,063 INFO L272 TraceCheckUtils]: 14: Hoare triple {8738#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {8362#true} is VALID [2022-04-08 11:24:36,063 INFO L290 TraceCheckUtils]: 13: Hoare triple {8738#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {8738#(< ~counter~0 48)} is VALID [2022-04-08 11:24:36,064 INFO L290 TraceCheckUtils]: 12: Hoare triple {8778#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8738#(< ~counter~0 48)} is VALID [2022-04-08 11:24:36,064 INFO L290 TraceCheckUtils]: 11: Hoare triple {8778#(< ~counter~0 47)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {8778#(< ~counter~0 47)} is VALID [2022-04-08 11:24:36,064 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8362#true} {8778#(< ~counter~0 47)} #77#return; {8778#(< ~counter~0 47)} is VALID [2022-04-08 11:24:36,064 INFO L290 TraceCheckUtils]: 9: Hoare triple {8362#true} assume true; {8362#true} is VALID [2022-04-08 11:24:36,064 INFO L290 TraceCheckUtils]: 8: Hoare triple {8362#true} assume !(0 == ~cond); {8362#true} is VALID [2022-04-08 11:24:36,064 INFO L290 TraceCheckUtils]: 7: Hoare triple {8362#true} ~cond := #in~cond; {8362#true} is VALID [2022-04-08 11:24:36,065 INFO L272 TraceCheckUtils]: 6: Hoare triple {8778#(< ~counter~0 47)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8362#true} is VALID [2022-04-08 11:24:36,065 INFO L290 TraceCheckUtils]: 5: Hoare triple {8778#(< ~counter~0 47)} 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; {8778#(< ~counter~0 47)} is VALID [2022-04-08 11:24:36,065 INFO L272 TraceCheckUtils]: 4: Hoare triple {8778#(< ~counter~0 47)} call #t~ret8 := main(); {8778#(< ~counter~0 47)} is VALID [2022-04-08 11:24:36,065 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8778#(< ~counter~0 47)} {8362#true} #93#return; {8778#(< ~counter~0 47)} is VALID [2022-04-08 11:24:36,066 INFO L290 TraceCheckUtils]: 2: Hoare triple {8778#(< ~counter~0 47)} assume true; {8778#(< ~counter~0 47)} is VALID [2022-04-08 11:24:36,066 INFO L290 TraceCheckUtils]: 1: Hoare triple {8362#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; {8778#(< ~counter~0 47)} is VALID [2022-04-08 11:24:36,066 INFO L272 TraceCheckUtils]: 0: Hoare triple {8362#true} call ULTIMATE.init(); {8362#true} is VALID [2022-04-08 11:24:36,066 INFO L134 CoverageAnalysis]: Checked inductivity of 170 backedges. 18 proven. 8 refuted. 0 times theorem prover too weak. 144 trivial. 0 not checked. [2022-04-08 11:24:36,067 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:24:36,067 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [812107072] [2022-04-08 11:24:36,067 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:24:36,067 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [988861459] [2022-04-08 11:24:36,067 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [988861459] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:24:36,067 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:24:36,067 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 11:24:36,067 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:24:36,067 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1822068098] [2022-04-08 11:24:36,067 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1822068098] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:24:36,067 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:24:36,067 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 11:24:36,068 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [917461542] [2022-04-08 11:24:36,068 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:24:36,068 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 74 [2022-04-08 11:24:36,068 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:24:36,068 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 11:24:36,108 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-08 11:24:36,109 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 11:24:36,109 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:36,109 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 11:24:36,109 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 11:24:36,109 INFO L87 Difference]: Start difference. First operand 112 states and 133 transitions. Second operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 11:24:36,419 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:36,419 INFO L93 Difference]: Finished difference Result 141 states and 164 transitions. [2022-04-08 11:24:36,419 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 11:24:36,420 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) Word has length 74 [2022-04-08 11:24:36,420 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:24:36,420 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 11:24:36,421 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 94 transitions. [2022-04-08 11:24:36,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 11:24:36,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 94 transitions. [2022-04-08 11:24:36,422 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 94 transitions. [2022-04-08 11:24:36,490 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:36,492 INFO L225 Difference]: With dead ends: 141 [2022-04-08 11:24:36,492 INFO L226 Difference]: Without dead ends: 134 [2022-04-08 11:24:36,492 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 137 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=61, Invalid=95, Unknown=0, NotChecked=0, Total=156 [2022-04-08 11:24:36,493 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 14 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 161 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:24:36,493 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 161 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:24:36,493 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 134 states. [2022-04-08 11:24:36,641 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 134 to 132. [2022-04-08 11:24:36,641 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:24:36,642 INFO L82 GeneralOperation]: Start isEquivalent. First operand 134 states. Second operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 11:24:36,642 INFO L74 IsIncluded]: Start isIncluded. First operand 134 states. Second operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 11:24:36,642 INFO L87 Difference]: Start difference. First operand 134 states. Second operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 11:24:36,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:36,646 INFO L93 Difference]: Finished difference Result 134 states and 157 transitions. [2022-04-08 11:24:36,646 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 157 transitions. [2022-04-08 11:24:36,647 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:36,647 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:36,647 INFO L74 IsIncluded]: Start isIncluded. First operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) Second operand 134 states. [2022-04-08 11:24:36,647 INFO L87 Difference]: Start difference. First operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) Second operand 134 states. [2022-04-08 11:24:36,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:24:36,651 INFO L93 Difference]: Finished difference Result 134 states and 157 transitions. [2022-04-08 11:24:36,652 INFO L276 IsEmpty]: Start isEmpty. Operand 134 states and 157 transitions. [2022-04-08 11:24:36,652 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:24:36,652 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:24:36,652 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:24:36,652 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:24:36,653 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 132 states, 85 states have (on average 1.1411764705882352) internal successors, (97), 88 states have internal predecessors, (97), 30 states have call successors, (30), 17 states have call predecessors, (30), 16 states have return successors, (28), 26 states have call predecessors, (28), 28 states have call successors, (28) [2022-04-08 11:24:36,655 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 155 transitions. [2022-04-08 11:24:36,655 INFO L78 Accepts]: Start accepts. Automaton has 132 states and 155 transitions. Word has length 74 [2022-04-08 11:24:36,655 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:24:36,655 INFO L478 AbstractCegarLoop]: Abstraction has 132 states and 155 transitions. [2022-04-08 11:24:36,655 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.571428571428571) internal successors, (32), 6 states have internal predecessors, (32), 6 states have call successors, (13), 6 states have call predecessors, (13), 4 states have return successors, (11), 4 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-08 11:24:36,655 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 132 states and 155 transitions. [2022-04-08 11:24:36,817 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:24:36,817 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 155 transitions. [2022-04-08 11:24:36,825 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-08 11:24:36,825 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:24:36,825 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-08 11:24:36,849 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-08 11:24:37,026 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-08 11:24:37,026 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:24:37,027 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:24:37,027 INFO L85 PathProgramCache]: Analyzing trace with hash 1777426592, now seen corresponding path program 1 times [2022-04-08 11:24:37,027 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:24:37,027 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1878655286] [2022-04-08 11:24:37,223 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:24:58,195 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:24:58,195 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:24:58,195 INFO L85 PathProgramCache]: Analyzing trace with hash 1777426592, now seen corresponding path program 2 times [2022-04-08 11:24:58,195 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:24:58,196 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [491995505] [2022-04-08 11:24:58,196 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:24:58,196 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:24:58,213 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:24:58,213 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [668698433] [2022-04-08 11:24:58,213 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:24:58,213 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:24:58,213 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:24:58,214 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:24:58,215 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-08 11:24:58,265 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:24:58,265 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:24:58,266 INFO L263 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-08 11:24:58,280 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:24:58,282 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:00,265 INFO L272 TraceCheckUtils]: 0: Hoare triple {9633#true} call ULTIMATE.init(); {9633#true} is VALID [2022-04-08 11:25:00,265 INFO L290 TraceCheckUtils]: 1: Hoare triple {9633#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; {9633#true} is VALID [2022-04-08 11:25:00,266 INFO L290 TraceCheckUtils]: 2: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:00,266 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9633#true} {9633#true} #93#return; {9633#true} is VALID [2022-04-08 11:25:00,266 INFO L272 TraceCheckUtils]: 4: Hoare triple {9633#true} call #t~ret8 := main(); {9633#true} is VALID [2022-04-08 11:25:00,266 INFO L290 TraceCheckUtils]: 5: Hoare triple {9633#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; {9633#true} is VALID [2022-04-08 11:25:00,266 INFO L272 TraceCheckUtils]: 6: Hoare triple {9633#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:00,266 INFO L290 TraceCheckUtils]: 7: Hoare triple {9633#true} ~cond := #in~cond; {9659#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 11:25:00,266 INFO L290 TraceCheckUtils]: 8: Hoare triple {9659#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {9663#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:25:00,267 INFO L290 TraceCheckUtils]: 9: Hoare triple {9663#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {9663#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 11:25:00,267 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9663#(not (= |assume_abort_if_not_#in~cond| 0))} {9633#true} #77#return; {9670#(<= 1 main_~y~0)} is VALID [2022-04-08 11:25:00,268 INFO L290 TraceCheckUtils]: 11: Hoare triple {9670#(<= 1 main_~y~0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,268 INFO L290 TraceCheckUtils]: 12: Hoare triple {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,268 INFO L290 TraceCheckUtils]: 13: Hoare triple {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post6 < 50);havoc #t~post6; {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,268 INFO L272 TraceCheckUtils]: 14: Hoare triple {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:00,268 INFO L290 TraceCheckUtils]: 15: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:00,268 INFO L290 TraceCheckUtils]: 16: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:00,269 INFO L290 TraceCheckUtils]: 17: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:00,269 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {9633#true} {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} #79#return; {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,269 INFO L272 TraceCheckUtils]: 19: Hoare triple {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:00,269 INFO L290 TraceCheckUtils]: 20: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:00,269 INFO L290 TraceCheckUtils]: 21: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:00,269 INFO L290 TraceCheckUtils]: 22: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:00,270 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9633#true} {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} #81#return; {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,270 INFO L290 TraceCheckUtils]: 24: Hoare triple {9674#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,271 INFO L290 TraceCheckUtils]: 25: Hoare triple {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,271 INFO L290 TraceCheckUtils]: 26: Hoare triple {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post7 < 50);havoc #t~post7; {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,271 INFO L272 TraceCheckUtils]: 27: Hoare triple {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:00,271 INFO L290 TraceCheckUtils]: 28: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:00,271 INFO L290 TraceCheckUtils]: 29: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:00,271 INFO L290 TraceCheckUtils]: 30: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:00,272 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {9633#true} {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #83#return; {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,272 INFO L272 TraceCheckUtils]: 32: Hoare triple {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:00,272 INFO L290 TraceCheckUtils]: 33: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:00,272 INFO L290 TraceCheckUtils]: 34: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:00,272 INFO L290 TraceCheckUtils]: 35: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:00,273 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {9633#true} {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #85#return; {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,273 INFO L272 TraceCheckUtils]: 37: Hoare triple {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:00,273 INFO L290 TraceCheckUtils]: 38: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:00,273 INFO L290 TraceCheckUtils]: 39: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:00,273 INFO L290 TraceCheckUtils]: 40: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:00,273 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {9633#true} {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #87#return; {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,274 INFO L290 TraceCheckUtils]: 42: Hoare triple {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(~r~0 >= 2 * ~b~0); {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,274 INFO L272 TraceCheckUtils]: 43: Hoare triple {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:00,274 INFO L290 TraceCheckUtils]: 44: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:00,274 INFO L290 TraceCheckUtils]: 45: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:00,274 INFO L290 TraceCheckUtils]: 46: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:00,275 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {9633#true} {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #89#return; {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,276 INFO L290 TraceCheckUtils]: 48: Hoare triple {9714#(and (= main_~x~0 main_~r~0) (<= 1 main_~a~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,277 INFO L290 TraceCheckUtils]: 49: Hoare triple {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,277 INFO L290 TraceCheckUtils]: 50: Hoare triple {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post7 < 50);havoc #t~post7; {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,277 INFO L272 TraceCheckUtils]: 51: Hoare triple {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:00,277 INFO L290 TraceCheckUtils]: 52: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:00,277 INFO L290 TraceCheckUtils]: 53: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:00,277 INFO L290 TraceCheckUtils]: 54: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:00,278 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {9633#true} {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #83#return; {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,278 INFO L272 TraceCheckUtils]: 56: Hoare triple {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:00,278 INFO L290 TraceCheckUtils]: 57: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:00,278 INFO L290 TraceCheckUtils]: 58: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:00,278 INFO L290 TraceCheckUtils]: 59: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:00,279 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {9633#true} {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #85#return; {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,279 INFO L272 TraceCheckUtils]: 61: Hoare triple {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:00,279 INFO L290 TraceCheckUtils]: 62: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:00,279 INFO L290 TraceCheckUtils]: 63: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:00,279 INFO L290 TraceCheckUtils]: 64: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:00,279 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {9633#true} {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #87#return; {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,280 INFO L290 TraceCheckUtils]: 66: Hoare triple {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !(~r~0 >= 2 * ~b~0); {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,280 INFO L290 TraceCheckUtils]: 67: Hoare triple {9787#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {9845#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,281 INFO L290 TraceCheckUtils]: 68: Hoare triple {9845#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9845#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,281 INFO L290 TraceCheckUtils]: 69: Hoare triple {9845#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} assume !!(#t~post6 < 50);havoc #t~post6; {9845#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} is VALID [2022-04-08 11:25:00,281 INFO L272 TraceCheckUtils]: 70: Hoare triple {9845#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:00,282 INFO L290 TraceCheckUtils]: 71: Hoare triple {9633#true} ~cond := #in~cond; {9858#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:00,282 INFO L290 TraceCheckUtils]: 72: Hoare triple {9858#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {9862#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:00,282 INFO L290 TraceCheckUtils]: 73: Hoare triple {9862#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {9862#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:00,285 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {9862#(not (= |__VERIFIER_assert_#in~cond| 0))} {9845#(and (= (+ (* (- 1) main_~a~0) main_~q~0) 0) (= (mod main_~a~0 2) 0) (<= 1 (div (* (- 1) main_~a~0) (- 2))) (<= (div (- main_~b~0) (- 2)) main_~y~0) (= main_~x~0 (+ main_~b~0 main_~r~0)) (<= 1 main_~y~0))} #79#return; {9869#(and (<= 1 (div (* (- 1) main_~q~0) (- 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0) (<= 1 main_~y~0) (<= (div (+ main_~r~0 (* (- 1) main_~x~0)) (- 2)) main_~y~0))} is VALID [2022-04-08 11:25:00,285 INFO L272 TraceCheckUtils]: 75: Hoare triple {9869#(and (<= 1 (div (* (- 1) main_~q~0) (- 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0) (<= 1 main_~y~0) (<= (div (+ main_~r~0 (* (- 1) main_~x~0)) (- 2)) main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {9873#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:00,286 INFO L290 TraceCheckUtils]: 76: Hoare triple {9873#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9877#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:00,286 INFO L290 TraceCheckUtils]: 77: Hoare triple {9877#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {9634#false} is VALID [2022-04-08 11:25:00,286 INFO L290 TraceCheckUtils]: 78: Hoare triple {9634#false} assume !false; {9634#false} is VALID [2022-04-08 11:25:00,286 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 46 proven. 11 refuted. 0 times theorem prover too weak. 153 trivial. 0 not checked. [2022-04-08 11:25:00,287 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:25:10,442 INFO L290 TraceCheckUtils]: 78: Hoare triple {9634#false} assume !false; {9634#false} is VALID [2022-04-08 11:25:10,442 INFO L290 TraceCheckUtils]: 77: Hoare triple {9877#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {9634#false} is VALID [2022-04-08 11:25:10,443 INFO L290 TraceCheckUtils]: 76: Hoare triple {9873#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9877#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:10,443 INFO L272 TraceCheckUtils]: 75: Hoare triple {9893#(= (+ (* 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)); {9873#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:10,444 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {9862#(not (= |__VERIFIER_assert_#in~cond| 0))} {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #79#return; {9893#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:10,444 INFO L290 TraceCheckUtils]: 73: Hoare triple {9862#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {9862#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:10,444 INFO L290 TraceCheckUtils]: 72: Hoare triple {9907#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {9862#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:25:10,445 INFO L290 TraceCheckUtils]: 71: Hoare triple {9633#true} ~cond := #in~cond; {9907#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:25:10,445 INFO L272 TraceCheckUtils]: 70: Hoare triple {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:10,445 INFO L290 TraceCheckUtils]: 69: Hoare triple {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} assume !!(#t~post6 < 50);havoc #t~post6; {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:25:10,446 INFO L290 TraceCheckUtils]: 68: Hoare triple {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:25:10,453 INFO L290 TraceCheckUtils]: 67: Hoare triple {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:25:10,453 INFO L290 TraceCheckUtils]: 66: Hoare triple {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} assume !(~r~0 >= 2 * ~b~0); {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:25:10,454 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {9633#true} {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #87#return; {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:25:10,454 INFO L290 TraceCheckUtils]: 64: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:10,454 INFO L290 TraceCheckUtils]: 63: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:10,454 INFO L290 TraceCheckUtils]: 62: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:10,454 INFO L272 TraceCheckUtils]: 61: Hoare triple {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:10,455 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {9633#true} {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #85#return; {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:25:10,455 INFO L290 TraceCheckUtils]: 59: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:10,455 INFO L290 TraceCheckUtils]: 58: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:10,455 INFO L290 TraceCheckUtils]: 57: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:10,455 INFO L272 TraceCheckUtils]: 56: Hoare triple {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= 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)); {9633#true} is VALID [2022-04-08 11:25:10,456 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {9633#true} {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #83#return; {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:25:10,456 INFO L290 TraceCheckUtils]: 54: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:10,456 INFO L290 TraceCheckUtils]: 53: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:10,456 INFO L290 TraceCheckUtils]: 52: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:10,456 INFO L272 TraceCheckUtils]: 51: Hoare triple {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:10,456 INFO L290 TraceCheckUtils]: 50: Hoare triple {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:25:10,457 INFO L290 TraceCheckUtils]: 49: Hoare triple {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:25:10,458 INFO L290 TraceCheckUtils]: 48: Hoare triple {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {9897#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:25:10,459 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {9633#true} {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} #89#return; {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:25:10,459 INFO L290 TraceCheckUtils]: 46: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:10,459 INFO L290 TraceCheckUtils]: 45: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:10,459 INFO L290 TraceCheckUtils]: 44: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:10,459 INFO L272 TraceCheckUtils]: 43: Hoare triple {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:10,459 INFO L290 TraceCheckUtils]: 42: Hoare triple {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} assume !!(~r~0 >= 2 * ~b~0); {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:25:10,460 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {9633#true} {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} #87#return; {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:25:10,460 INFO L290 TraceCheckUtils]: 40: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:10,460 INFO L290 TraceCheckUtils]: 39: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:10,460 INFO L290 TraceCheckUtils]: 38: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:10,460 INFO L272 TraceCheckUtils]: 37: Hoare triple {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:10,461 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {9633#true} {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} #85#return; {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:25:10,461 INFO L290 TraceCheckUtils]: 35: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:10,461 INFO L290 TraceCheckUtils]: 34: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:10,461 INFO L290 TraceCheckUtils]: 33: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:10,461 INFO L272 TraceCheckUtils]: 32: Hoare triple {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 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)); {9633#true} is VALID [2022-04-08 11:25:10,462 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {9633#true} {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} #83#return; {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:25:10,462 INFO L290 TraceCheckUtils]: 30: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:10,462 INFO L290 TraceCheckUtils]: 29: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:10,462 INFO L290 TraceCheckUtils]: 28: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:10,462 INFO L272 TraceCheckUtils]: 27: Hoare triple {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:10,464 INFO L290 TraceCheckUtils]: 26: Hoare triple {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} assume !!(#t~post7 < 50);havoc #t~post7; {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:25:10,465 INFO L290 TraceCheckUtils]: 25: Hoare triple {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:25:10,465 INFO L290 TraceCheckUtils]: 24: Hoare triple {9893#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {9977#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))))} is VALID [2022-04-08 11:25:10,465 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {9633#true} {9893#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #81#return; {9893#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:10,466 INFO L290 TraceCheckUtils]: 22: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:10,466 INFO L290 TraceCheckUtils]: 21: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:10,466 INFO L290 TraceCheckUtils]: 20: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:10,466 INFO L272 TraceCheckUtils]: 19: Hoare triple {9893#(= (+ (* 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)); {9633#true} is VALID [2022-04-08 11:25:10,466 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {9633#true} {9893#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {9893#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:10,466 INFO L290 TraceCheckUtils]: 17: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:10,466 INFO L290 TraceCheckUtils]: 16: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:10,466 INFO L290 TraceCheckUtils]: 15: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:10,467 INFO L272 TraceCheckUtils]: 14: Hoare triple {9893#(= (+ (* 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)); {9633#true} is VALID [2022-04-08 11:25:10,467 INFO L290 TraceCheckUtils]: 13: Hoare triple {9893#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 50);havoc #t~post6; {9893#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:10,467 INFO L290 TraceCheckUtils]: 12: Hoare triple {9893#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9893#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:10,467 INFO L290 TraceCheckUtils]: 11: Hoare triple {9633#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {9893#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:10,468 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9633#true} {9633#true} #77#return; {9633#true} is VALID [2022-04-08 11:25:10,468 INFO L290 TraceCheckUtils]: 9: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:10,468 INFO L290 TraceCheckUtils]: 8: Hoare triple {9633#true} assume !(0 == ~cond); {9633#true} is VALID [2022-04-08 11:25:10,468 INFO L290 TraceCheckUtils]: 7: Hoare triple {9633#true} ~cond := #in~cond; {9633#true} is VALID [2022-04-08 11:25:10,468 INFO L272 TraceCheckUtils]: 6: Hoare triple {9633#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9633#true} is VALID [2022-04-08 11:25:10,468 INFO L290 TraceCheckUtils]: 5: Hoare triple {9633#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; {9633#true} is VALID [2022-04-08 11:25:10,468 INFO L272 TraceCheckUtils]: 4: Hoare triple {9633#true} call #t~ret8 := main(); {9633#true} is VALID [2022-04-08 11:25:10,468 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9633#true} {9633#true} #93#return; {9633#true} is VALID [2022-04-08 11:25:10,468 INFO L290 TraceCheckUtils]: 2: Hoare triple {9633#true} assume true; {9633#true} is VALID [2022-04-08 11:25:10,468 INFO L290 TraceCheckUtils]: 1: Hoare triple {9633#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; {9633#true} is VALID [2022-04-08 11:25:10,468 INFO L272 TraceCheckUtils]: 0: Hoare triple {9633#true} call ULTIMATE.init(); {9633#true} is VALID [2022-04-08 11:25:10,469 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 46 proven. 10 refuted. 0 times theorem prover too weak. 154 trivial. 0 not checked. [2022-04-08 11:25:10,469 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:10,469 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [491995505] [2022-04-08 11:25:10,469 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:25:10,469 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [668698433] [2022-04-08 11:25:10,469 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [668698433] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:25:10,469 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:25:10,469 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 9] total 18 [2022-04-08 11:25:10,469 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:10,469 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1878655286] [2022-04-08 11:25:10,470 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1878655286] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:10,470 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:10,470 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 11:25:10,470 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [266650628] [2022-04-08 11:25:10,470 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:10,470 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) Word has length 79 [2022-04-08 11:25:10,470 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:10,470 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 11:25:10,517 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:10,517 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 11:25:10,517 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:10,518 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 11:25:10,518 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=245, Unknown=0, NotChecked=0, Total=306 [2022-04-08 11:25:10,518 INFO L87 Difference]: Start difference. First operand 132 states and 155 transitions. Second operand has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 11:25:14,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:14,978 INFO L93 Difference]: Finished difference Result 161 states and 197 transitions. [2022-04-08 11:25:14,978 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 11:25:14,979 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) Word has length 79 [2022-04-08 11:25:14,979 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:14,979 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 11:25:14,980 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 119 transitions. [2022-04-08 11:25:14,980 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 11:25:14,982 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 119 transitions. [2022-04-08 11:25:14,982 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 119 transitions. [2022-04-08 11:25:15,084 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:15,087 INFO L225 Difference]: With dead ends: 161 [2022-04-08 11:25:15,087 INFO L226 Difference]: Without dead ends: 158 [2022-04-08 11:25:15,087 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 138 SyntacticMatches, 3 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 112 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=86, Invalid=376, Unknown=0, NotChecked=0, Total=462 [2022-04-08 11:25:15,087 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 51 mSDsluCounter, 214 mSDsCounter, 0 mSdLazyCounter, 576 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 67 SdHoareTripleChecker+Valid, 259 SdHoareTripleChecker+Invalid, 607 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 576 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:15,087 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [67 Valid, 259 Invalid, 607 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 576 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-08 11:25:15,088 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 158 states. [2022-04-08 11:25:15,273 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 158 to 153. [2022-04-08 11:25:15,274 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:15,274 INFO L82 GeneralOperation]: Start isEquivalent. First operand 158 states. Second operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:25:15,274 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:25:15,274 INFO L87 Difference]: Start difference. First operand 158 states. Second operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:25:15,278 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:15,278 INFO L93 Difference]: Finished difference Result 158 states and 193 transitions. [2022-04-08 11:25:15,278 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 193 transitions. [2022-04-08 11:25:15,278 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:15,278 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:15,279 INFO L74 IsIncluded]: Start isIncluded. First operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) Second operand 158 states. [2022-04-08 11:25:15,279 INFO L87 Difference]: Start difference. First operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) Second operand 158 states. [2022-04-08 11:25:15,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:15,283 INFO L93 Difference]: Finished difference Result 158 states and 193 transitions. [2022-04-08 11:25:15,283 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 193 transitions. [2022-04-08 11:25:15,283 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:15,283 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:15,283 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:15,283 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:15,283 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 153 states, 96 states have (on average 1.1666666666666667) internal successors, (112), 99 states have internal predecessors, (112), 39 states have call successors, (39), 18 states have call predecessors, (39), 17 states have return successors, (37), 35 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 11:25:15,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 188 transitions. [2022-04-08 11:25:15,286 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 188 transitions. Word has length 79 [2022-04-08 11:25:15,287 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:15,287 INFO L478 AbstractCegarLoop]: Abstraction has 153 states and 188 transitions. [2022-04-08 11:25:15,287 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.230769230769231) internal successors, (29), 11 states have internal predecessors, (29), 6 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 6 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-08 11:25:15,287 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 153 states and 188 transitions. [2022-04-08 11:25:15,484 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 188 edges. 188 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:15,484 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 188 transitions. [2022-04-08 11:25:15,485 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2022-04-08 11:25:15,485 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:15,485 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 3, 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, 1, 1] [2022-04-08 11:25:15,501 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-08 11:25:15,695 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-08 11:25:15,695 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:15,696 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:15,696 INFO L85 PathProgramCache]: Analyzing trace with hash -554329876, now seen corresponding path program 3 times [2022-04-08 11:25:15,696 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:15,696 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [830007519] [2022-04-08 11:25:32,619 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:25:32,619 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:25:32,620 INFO L85 PathProgramCache]: Analyzing trace with hash -554329876, now seen corresponding path program 4 times [2022-04-08 11:25:32,620 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:25:32,620 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1240776104] [2022-04-08 11:25:32,620 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:25:32,620 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:25:32,650 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:25:32,650 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1705998969] [2022-04-08 11:25:32,651 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:25:32,651 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:32,651 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:25:32,652 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:25:32,652 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-08 11:25:32,732 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:25:32,733 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:25:32,733 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-08 11:25:32,745 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:25:32,746 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:25:33,141 INFO L272 TraceCheckUtils]: 0: Hoare triple {11076#true} call ULTIMATE.init(); {11076#true} is VALID [2022-04-08 11:25:33,141 INFO L290 TraceCheckUtils]: 1: Hoare triple {11076#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; {11076#true} is VALID [2022-04-08 11:25:33,141 INFO L290 TraceCheckUtils]: 2: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,141 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11076#true} {11076#true} #93#return; {11076#true} is VALID [2022-04-08 11:25:33,141 INFO L272 TraceCheckUtils]: 4: Hoare triple {11076#true} call #t~ret8 := main(); {11076#true} is VALID [2022-04-08 11:25:33,141 INFO L290 TraceCheckUtils]: 5: Hoare triple {11076#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; {11076#true} is VALID [2022-04-08 11:25:33,141 INFO L272 TraceCheckUtils]: 6: Hoare triple {11076#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11076#true} is VALID [2022-04-08 11:25:33,141 INFO L290 TraceCheckUtils]: 7: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:33,142 INFO L290 TraceCheckUtils]: 8: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:33,142 INFO L290 TraceCheckUtils]: 9: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,142 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11076#true} {11076#true} #77#return; {11076#true} is VALID [2022-04-08 11:25:33,142 INFO L290 TraceCheckUtils]: 11: Hoare triple {11076#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:33,142 INFO L290 TraceCheckUtils]: 12: Hoare triple {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:33,143 INFO L290 TraceCheckUtils]: 13: Hoare triple {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:33,143 INFO L272 TraceCheckUtils]: 14: Hoare triple {11114#(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)); {11076#true} is VALID [2022-04-08 11:25:33,143 INFO L290 TraceCheckUtils]: 15: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:33,143 INFO L290 TraceCheckUtils]: 16: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:33,143 INFO L290 TraceCheckUtils]: 17: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,144 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11076#true} {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:33,144 INFO L272 TraceCheckUtils]: 19: Hoare triple {11114#(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)); {11076#true} is VALID [2022-04-08 11:25:33,144 INFO L290 TraceCheckUtils]: 20: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:33,144 INFO L290 TraceCheckUtils]: 21: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:33,144 INFO L290 TraceCheckUtils]: 22: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,145 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11076#true} {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:33,145 INFO L290 TraceCheckUtils]: 24: Hoare triple {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {11154#(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-08 11:25:33,145 INFO L290 TraceCheckUtils]: 25: Hoare triple {11154#(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; {11154#(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-08 11:25:33,146 INFO L290 TraceCheckUtils]: 26: Hoare triple {11154#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {11154#(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-08 11:25:33,146 INFO L272 TraceCheckUtils]: 27: Hoare triple {11154#(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)); {11076#true} is VALID [2022-04-08 11:25:33,146 INFO L290 TraceCheckUtils]: 28: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:33,146 INFO L290 TraceCheckUtils]: 29: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:33,146 INFO L290 TraceCheckUtils]: 30: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,147 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11076#true} {11154#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {11154#(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-08 11:25:33,147 INFO L272 TraceCheckUtils]: 32: Hoare triple {11154#(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)); {11076#true} is VALID [2022-04-08 11:25:33,147 INFO L290 TraceCheckUtils]: 33: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:33,147 INFO L290 TraceCheckUtils]: 34: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:33,147 INFO L290 TraceCheckUtils]: 35: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,148 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11076#true} {11154#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {11154#(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-08 11:25:33,148 INFO L272 TraceCheckUtils]: 37: Hoare triple {11154#(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)); {11076#true} is VALID [2022-04-08 11:25:33,148 INFO L290 TraceCheckUtils]: 38: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:33,148 INFO L290 TraceCheckUtils]: 39: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:33,148 INFO L290 TraceCheckUtils]: 40: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,149 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11076#true} {11154#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {11154#(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-08 11:25:33,149 INFO L290 TraceCheckUtils]: 42: Hoare triple {11154#(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); {11154#(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-08 11:25:33,149 INFO L272 TraceCheckUtils]: 43: Hoare triple {11154#(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)); {11076#true} is VALID [2022-04-08 11:25:33,149 INFO L290 TraceCheckUtils]: 44: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:33,149 INFO L290 TraceCheckUtils]: 45: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:33,149 INFO L290 TraceCheckUtils]: 46: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,150 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11076#true} {11154#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {11154#(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-08 11:25:33,150 INFO L290 TraceCheckUtils]: 48: Hoare triple {11154#(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; {11227#(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-08 11:25:33,151 INFO L290 TraceCheckUtils]: 49: Hoare triple {11227#(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; {11227#(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-08 11:25:33,151 INFO L290 TraceCheckUtils]: 50: Hoare triple {11227#(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 < 50);havoc #t~post7; {11227#(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-08 11:25:33,151 INFO L272 TraceCheckUtils]: 51: Hoare triple {11227#(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)); {11076#true} is VALID [2022-04-08 11:25:33,152 INFO L290 TraceCheckUtils]: 52: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:33,152 INFO L290 TraceCheckUtils]: 53: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:33,152 INFO L290 TraceCheckUtils]: 54: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,152 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11076#true} {11227#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #83#return; {11227#(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-08 11:25:33,152 INFO L272 TraceCheckUtils]: 56: Hoare triple {11227#(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)); {11076#true} is VALID [2022-04-08 11:25:33,152 INFO L290 TraceCheckUtils]: 57: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:33,153 INFO L290 TraceCheckUtils]: 58: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:33,153 INFO L290 TraceCheckUtils]: 59: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,153 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {11076#true} {11227#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #85#return; {11227#(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-08 11:25:33,153 INFO L272 TraceCheckUtils]: 61: Hoare triple {11227#(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)); {11076#true} is VALID [2022-04-08 11:25:33,153 INFO L290 TraceCheckUtils]: 62: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:33,153 INFO L290 TraceCheckUtils]: 63: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:33,153 INFO L290 TraceCheckUtils]: 64: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,154 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {11076#true} {11227#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #87#return; {11227#(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-08 11:25:33,154 INFO L290 TraceCheckUtils]: 66: Hoare triple {11227#(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); {11227#(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-08 11:25:33,154 INFO L272 TraceCheckUtils]: 67: Hoare triple {11227#(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 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {11076#true} is VALID [2022-04-08 11:25:33,155 INFO L290 TraceCheckUtils]: 68: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:33,155 INFO L290 TraceCheckUtils]: 69: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:33,155 INFO L290 TraceCheckUtils]: 70: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:33,155 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {11076#true} {11227#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} #89#return; {11227#(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-08 11:25:33,156 INFO L290 TraceCheckUtils]: 72: Hoare triple {11227#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~a~0 2))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {11300#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (= main_~a~0 4))} is VALID [2022-04-08 11:25:33,156 INFO L290 TraceCheckUtils]: 73: Hoare triple {11300#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (= main_~a~0 4))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11300#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (= main_~a~0 4))} is VALID [2022-04-08 11:25:33,157 INFO L290 TraceCheckUtils]: 74: Hoare triple {11300#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (= main_~a~0 4))} assume !(#t~post7 < 50);havoc #t~post7; {11300#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (= main_~a~0 4))} is VALID [2022-04-08 11:25:33,157 INFO L290 TraceCheckUtils]: 75: Hoare triple {11300#(and (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 4)) (= main_~q~0 0) (= main_~a~0 4))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {11310#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4))} is VALID [2022-04-08 11:25:33,158 INFO L290 TraceCheckUtils]: 76: Hoare triple {11310#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11310#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4))} is VALID [2022-04-08 11:25:33,158 INFO L290 TraceCheckUtils]: 77: Hoare triple {11310#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4))} assume !(#t~post6 < 50);havoc #t~post6; {11310#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4))} is VALID [2022-04-08 11:25:33,159 INFO L272 TraceCheckUtils]: 78: Hoare triple {11310#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= main_~q~0 4))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {11320#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:33,159 INFO L290 TraceCheckUtils]: 79: Hoare triple {11320#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11324#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:33,159 INFO L290 TraceCheckUtils]: 80: Hoare triple {11324#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11077#false} is VALID [2022-04-08 11:25:33,159 INFO L290 TraceCheckUtils]: 81: Hoare triple {11077#false} assume !false; {11077#false} is VALID [2022-04-08 11:25:33,160 INFO L134 CoverageAnalysis]: Checked inductivity of 214 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 180 trivial. 0 not checked. [2022-04-08 11:25:33,160 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:25:50,020 INFO L290 TraceCheckUtils]: 81: Hoare triple {11077#false} assume !false; {11077#false} is VALID [2022-04-08 11:25:50,021 INFO L290 TraceCheckUtils]: 80: Hoare triple {11324#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11077#false} is VALID [2022-04-08 11:25:50,021 INFO L290 TraceCheckUtils]: 79: Hoare triple {11320#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11324#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:25:50,022 INFO L272 TraceCheckUtils]: 78: Hoare triple {11340#(= (+ (* 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)); {11320#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:25:50,022 INFO L290 TraceCheckUtils]: 77: Hoare triple {11340#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(#t~post6 < 50);havoc #t~post6; {11340#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:50,022 INFO L290 TraceCheckUtils]: 76: Hoare triple {11340#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11340#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:50,029 INFO L290 TraceCheckUtils]: 75: Hoare triple {11350#(= 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; {11340#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:50,030 INFO L290 TraceCheckUtils]: 74: Hoare triple {11350#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} assume !(#t~post7 < 50);havoc #t~post7; {11350#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:50,030 INFO L290 TraceCheckUtils]: 73: Hoare triple {11350#(= 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; {11350#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:50,032 INFO L290 TraceCheckUtils]: 72: Hoare triple {11360#(= (+ (* (- 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; {11350#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:25:50,033 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {11076#true} {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #89#return; {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:50,033 INFO L290 TraceCheckUtils]: 70: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,033 INFO L290 TraceCheckUtils]: 69: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:50,033 INFO L290 TraceCheckUtils]: 68: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:50,033 INFO L272 TraceCheckUtils]: 67: Hoare triple {11360#(= (+ (* (- 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)); {11076#true} is VALID [2022-04-08 11:25:50,033 INFO L290 TraceCheckUtils]: 66: Hoare triple {11360#(= (+ (* (- 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); {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:50,034 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {11076#true} {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #87#return; {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:50,034 INFO L290 TraceCheckUtils]: 64: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,034 INFO L290 TraceCheckUtils]: 63: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:50,034 INFO L290 TraceCheckUtils]: 62: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:50,034 INFO L272 TraceCheckUtils]: 61: Hoare triple {11360#(= (+ (* (- 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)); {11076#true} is VALID [2022-04-08 11:25:50,035 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {11076#true} {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #85#return; {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:50,035 INFO L290 TraceCheckUtils]: 59: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,035 INFO L290 TraceCheckUtils]: 58: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:50,035 INFO L290 TraceCheckUtils]: 57: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:50,035 INFO L272 TraceCheckUtils]: 56: Hoare triple {11360#(= (+ (* (- 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)); {11076#true} is VALID [2022-04-08 11:25:50,036 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11076#true} {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} #83#return; {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:50,036 INFO L290 TraceCheckUtils]: 54: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,036 INFO L290 TraceCheckUtils]: 53: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:50,036 INFO L290 TraceCheckUtils]: 52: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:50,036 INFO L272 TraceCheckUtils]: 51: Hoare triple {11360#(= (+ (* (- 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)); {11076#true} is VALID [2022-04-08 11:25:50,036 INFO L290 TraceCheckUtils]: 50: Hoare triple {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 50);havoc #t~post7; {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:50,037 INFO L290 TraceCheckUtils]: 49: Hoare triple {11360#(= (+ (* (- 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; {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:50,039 INFO L290 TraceCheckUtils]: 48: Hoare triple {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {11360#(= (+ (* (- 2) main_~b~0) (* (+ (* main_~a~0 2) main_~q~0) main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:25:50,039 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {11076#true} {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} #89#return; {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:50,040 INFO L290 TraceCheckUtils]: 46: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,040 INFO L290 TraceCheckUtils]: 45: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:50,040 INFO L290 TraceCheckUtils]: 44: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:50,040 INFO L272 TraceCheckUtils]: 43: Hoare triple {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {11076#true} is VALID [2022-04-08 11:25:50,040 INFO L290 TraceCheckUtils]: 42: Hoare triple {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:50,041 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11076#true} {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} #87#return; {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:50,041 INFO L290 TraceCheckUtils]: 40: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,041 INFO L290 TraceCheckUtils]: 39: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:50,041 INFO L290 TraceCheckUtils]: 38: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:50,041 INFO L272 TraceCheckUtils]: 37: Hoare triple {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {11076#true} is VALID [2022-04-08 11:25:50,041 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11076#true} {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} #85#return; {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:50,041 INFO L290 TraceCheckUtils]: 35: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,041 INFO L290 TraceCheckUtils]: 34: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:50,042 INFO L290 TraceCheckUtils]: 33: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:50,042 INFO L272 TraceCheckUtils]: 32: Hoare triple {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {11076#true} is VALID [2022-04-08 11:25:50,042 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {11076#true} {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} #83#return; {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:50,042 INFO L290 TraceCheckUtils]: 30: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,042 INFO L290 TraceCheckUtils]: 29: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:50,042 INFO L290 TraceCheckUtils]: 28: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:50,042 INFO L272 TraceCheckUtils]: 27: Hoare triple {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {11076#true} is VALID [2022-04-08 11:25:50,043 INFO L290 TraceCheckUtils]: 26: Hoare triple {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} assume !!(#t~post7 < 50);havoc #t~post7; {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:50,043 INFO L290 TraceCheckUtils]: 25: Hoare triple {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:50,043 INFO L290 TraceCheckUtils]: 24: Hoare triple {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {11433#(= (+ (* main_~b~0 (- 4)) main_~r~0 (* main_~y~0 (+ (* main_~a~0 4) main_~q~0))) main_~x~0)} is VALID [2022-04-08 11:25:50,044 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11076#true} {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:50,044 INFO L290 TraceCheckUtils]: 22: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,044 INFO L290 TraceCheckUtils]: 21: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:50,044 INFO L290 TraceCheckUtils]: 20: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:50,044 INFO L272 TraceCheckUtils]: 19: Hoare triple {11114#(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)); {11076#true} is VALID [2022-04-08 11:25:50,045 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11076#true} {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:50,045 INFO L290 TraceCheckUtils]: 17: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,045 INFO L290 TraceCheckUtils]: 16: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:50,045 INFO L290 TraceCheckUtils]: 15: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:50,045 INFO L272 TraceCheckUtils]: 14: Hoare triple {11114#(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)); {11076#true} is VALID [2022-04-08 11:25:50,047 INFO L290 TraceCheckUtils]: 13: Hoare triple {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:50,047 INFO L290 TraceCheckUtils]: 12: Hoare triple {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:50,047 INFO L290 TraceCheckUtils]: 11: Hoare triple {11076#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {11114#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:25:50,047 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11076#true} {11076#true} #77#return; {11076#true} is VALID [2022-04-08 11:25:50,047 INFO L290 TraceCheckUtils]: 9: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,048 INFO L290 TraceCheckUtils]: 8: Hoare triple {11076#true} assume !(0 == ~cond); {11076#true} is VALID [2022-04-08 11:25:50,048 INFO L290 TraceCheckUtils]: 7: Hoare triple {11076#true} ~cond := #in~cond; {11076#true} is VALID [2022-04-08 11:25:50,048 INFO L272 TraceCheckUtils]: 6: Hoare triple {11076#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11076#true} is VALID [2022-04-08 11:25:50,048 INFO L290 TraceCheckUtils]: 5: Hoare triple {11076#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; {11076#true} is VALID [2022-04-08 11:25:50,048 INFO L272 TraceCheckUtils]: 4: Hoare triple {11076#true} call #t~ret8 := main(); {11076#true} is VALID [2022-04-08 11:25:50,048 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11076#true} {11076#true} #93#return; {11076#true} is VALID [2022-04-08 11:25:50,048 INFO L290 TraceCheckUtils]: 2: Hoare triple {11076#true} assume true; {11076#true} is VALID [2022-04-08 11:25:50,048 INFO L290 TraceCheckUtils]: 1: Hoare triple {11076#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; {11076#true} is VALID [2022-04-08 11:25:50,048 INFO L272 TraceCheckUtils]: 0: Hoare triple {11076#true} call ULTIMATE.init(); {11076#true} is VALID [2022-04-08 11:25:50,048 INFO L134 CoverageAnalysis]: Checked inductivity of 214 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 180 trivial. 0 not checked. [2022-04-08 11:25:50,049 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:25:50,049 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1240776104] [2022-04-08 11:25:50,049 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:25:50,049 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1705998969] [2022-04-08 11:25:50,049 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1705998969] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:25:50,049 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:25:50,049 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 13 [2022-04-08 11:25:50,049 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:25:50,049 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [830007519] [2022-04-08 11:25:50,049 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [830007519] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:25:50,049 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:25:50,049 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 11:25:50,049 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1660560793] [2022-04-08 11:25:50,050 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:25:50,050 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 82 [2022-04-08 11:25:50,050 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:25:50,050 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 11:25:50,089 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:50,089 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 11:25:50,089 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:50,089 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 11:25:50,089 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-08 11:25:50,089 INFO L87 Difference]: Start difference. First operand 153 states and 188 transitions. Second operand has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 11:25:50,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:50,947 INFO L93 Difference]: Finished difference Result 201 states and 254 transitions. [2022-04-08 11:25:50,947 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 11:25:50,947 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 82 [2022-04-08 11:25:50,947 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:25:50,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 11:25:50,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 135 transitions. [2022-04-08 11:25:50,949 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 11:25:50,950 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 135 transitions. [2022-04-08 11:25:50,950 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 135 transitions. [2022-04-08 11:25:51,080 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:51,083 INFO L225 Difference]: With dead ends: 201 [2022-04-08 11:25:51,083 INFO L226 Difference]: Without dead ends: 198 [2022-04-08 11:25:51,083 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 164 GetRequests, 150 SyntacticMatches, 2 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 37 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=44, Invalid=138, Unknown=0, NotChecked=0, Total=182 [2022-04-08 11:25:51,084 INFO L913 BasicCegarLoop]: 75 mSDtfsCounter, 37 mSDsluCounter, 191 mSDsCounter, 0 mSdLazyCounter, 279 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 266 SdHoareTripleChecker+Invalid, 304 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 279 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 11:25:51,084 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [51 Valid, 266 Invalid, 304 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 279 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 11:25:51,084 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 198 states. [2022-04-08 11:25:51,291 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 198 to 168. [2022-04-08 11:25:51,291 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:25:51,291 INFO L82 GeneralOperation]: Start isEquivalent. First operand 198 states. Second operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 11:25:51,291 INFO L74 IsIncluded]: Start isIncluded. First operand 198 states. Second operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 11:25:51,292 INFO L87 Difference]: Start difference. First operand 198 states. Second operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 11:25:51,295 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:51,295 INFO L93 Difference]: Finished difference Result 198 states and 249 transitions. [2022-04-08 11:25:51,295 INFO L276 IsEmpty]: Start isEmpty. Operand 198 states and 249 transitions. [2022-04-08 11:25:51,296 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:51,296 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:51,296 INFO L74 IsIncluded]: Start isIncluded. First operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) Second operand 198 states. [2022-04-08 11:25:51,296 INFO L87 Difference]: Start difference. First operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) Second operand 198 states. [2022-04-08 11:25:51,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:25:51,300 INFO L93 Difference]: Finished difference Result 198 states and 249 transitions. [2022-04-08 11:25:51,300 INFO L276 IsEmpty]: Start isEmpty. Operand 198 states and 249 transitions. [2022-04-08 11:25:51,300 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:25:51,301 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:25:51,301 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:25:51,301 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:25:51,301 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 168 states, 106 states have (on average 1.169811320754717) internal successors, (124), 108 states have internal predecessors, (124), 42 states have call successors, (42), 20 states have call predecessors, (42), 19 states have return successors, (40), 39 states have call predecessors, (40), 40 states have call successors, (40) [2022-04-08 11:25:51,304 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 168 states to 168 states and 206 transitions. [2022-04-08 11:25:51,304 INFO L78 Accepts]: Start accepts. Automaton has 168 states and 206 transitions. Word has length 82 [2022-04-08 11:25:51,304 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:25:51,304 INFO L478 AbstractCegarLoop]: Abstraction has 168 states and 206 transitions. [2022-04-08 11:25:51,304 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.2222222222222223) internal successors, (29), 8 states have internal predecessors, (29), 5 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-08 11:25:51,304 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 168 states and 206 transitions. [2022-04-08 11:25:51,524 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 206 edges. 206 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:25:51,524 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 206 transitions. [2022-04-08 11:25:51,525 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2022-04-08 11:25:51,525 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:25:51,525 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 3, 3, 2, 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-08 11:25:51,541 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-08 11:25:51,731 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:25:51,731 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:25:51,732 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:25:51,732 INFO L85 PathProgramCache]: Analyzing trace with hash 1891783602, now seen corresponding path program 1 times [2022-04-08 11:25:51,732 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:25:51,732 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [277903187] [2022-04-08 11:26:12,880 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:26:12,880 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:26:12,880 INFO L85 PathProgramCache]: Analyzing trace with hash 1891783602, now seen corresponding path program 2 times [2022-04-08 11:26:12,880 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:26:12,880 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [863548477] [2022-04-08 11:26:12,880 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:26:12,880 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:26:12,893 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:26:12,894 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [611792723] [2022-04-08 11:26:12,894 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:26:12,894 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:26:12,894 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:26:12,894 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:26:12,895 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-08 11:26:12,944 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:26:12,944 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:26:12,945 INFO L263 TraceCheckSpWp]: Trace formula consists of 234 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 11:26:12,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:26:12,960 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:26:13,270 INFO L272 TraceCheckUtils]: 0: Hoare triple {12716#true} call ULTIMATE.init(); {12716#true} is VALID [2022-04-08 11:26:13,271 INFO L290 TraceCheckUtils]: 1: Hoare triple {12716#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; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:26:13,271 INFO L290 TraceCheckUtils]: 2: Hoare triple {12724#(<= ~counter~0 0)} assume true; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:26:13,272 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12724#(<= ~counter~0 0)} {12716#true} #93#return; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:26:13,272 INFO L272 TraceCheckUtils]: 4: Hoare triple {12724#(<= ~counter~0 0)} call #t~ret8 := main(); {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:26:13,272 INFO L290 TraceCheckUtils]: 5: Hoare triple {12724#(<= ~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; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:26:13,273 INFO L272 TraceCheckUtils]: 6: Hoare triple {12724#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:26:13,273 INFO L290 TraceCheckUtils]: 7: Hoare triple {12724#(<= ~counter~0 0)} ~cond := #in~cond; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:26:13,273 INFO L290 TraceCheckUtils]: 8: Hoare triple {12724#(<= ~counter~0 0)} assume !(0 == ~cond); {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:26:13,273 INFO L290 TraceCheckUtils]: 9: Hoare triple {12724#(<= ~counter~0 0)} assume true; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:26:13,274 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12724#(<= ~counter~0 0)} {12724#(<= ~counter~0 0)} #77#return; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:26:13,274 INFO L290 TraceCheckUtils]: 11: Hoare triple {12724#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {12724#(<= ~counter~0 0)} is VALID [2022-04-08 11:26:13,275 INFO L290 TraceCheckUtils]: 12: Hoare triple {12724#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,275 INFO L290 TraceCheckUtils]: 13: Hoare triple {12758#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,275 INFO L272 TraceCheckUtils]: 14: Hoare triple {12758#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,275 INFO L290 TraceCheckUtils]: 15: Hoare triple {12758#(<= ~counter~0 1)} ~cond := #in~cond; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,276 INFO L290 TraceCheckUtils]: 16: Hoare triple {12758#(<= ~counter~0 1)} assume !(0 == ~cond); {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,276 INFO L290 TraceCheckUtils]: 17: Hoare triple {12758#(<= ~counter~0 1)} assume true; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,276 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12758#(<= ~counter~0 1)} {12758#(<= ~counter~0 1)} #79#return; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,277 INFO L272 TraceCheckUtils]: 19: Hoare triple {12758#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,277 INFO L290 TraceCheckUtils]: 20: Hoare triple {12758#(<= ~counter~0 1)} ~cond := #in~cond; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,277 INFO L290 TraceCheckUtils]: 21: Hoare triple {12758#(<= ~counter~0 1)} assume !(0 == ~cond); {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,278 INFO L290 TraceCheckUtils]: 22: Hoare triple {12758#(<= ~counter~0 1)} assume true; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,278 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12758#(<= ~counter~0 1)} {12758#(<= ~counter~0 1)} #81#return; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,278 INFO L290 TraceCheckUtils]: 24: Hoare triple {12758#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {12758#(<= ~counter~0 1)} is VALID [2022-04-08 11:26:13,279 INFO L290 TraceCheckUtils]: 25: Hoare triple {12758#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,279 INFO L290 TraceCheckUtils]: 26: Hoare triple {12798#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,279 INFO L272 TraceCheckUtils]: 27: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,280 INFO L290 TraceCheckUtils]: 28: Hoare triple {12798#(<= ~counter~0 2)} ~cond := #in~cond; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,280 INFO L290 TraceCheckUtils]: 29: Hoare triple {12798#(<= ~counter~0 2)} assume !(0 == ~cond); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,280 INFO L290 TraceCheckUtils]: 30: Hoare triple {12798#(<= ~counter~0 2)} assume true; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,281 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12798#(<= ~counter~0 2)} {12798#(<= ~counter~0 2)} #83#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,281 INFO L272 TraceCheckUtils]: 32: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,281 INFO L290 TraceCheckUtils]: 33: Hoare triple {12798#(<= ~counter~0 2)} ~cond := #in~cond; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,282 INFO L290 TraceCheckUtils]: 34: Hoare triple {12798#(<= ~counter~0 2)} assume !(0 == ~cond); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,282 INFO L290 TraceCheckUtils]: 35: Hoare triple {12798#(<= ~counter~0 2)} assume true; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,282 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {12798#(<= ~counter~0 2)} {12798#(<= ~counter~0 2)} #85#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,283 INFO L272 TraceCheckUtils]: 37: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,283 INFO L290 TraceCheckUtils]: 38: Hoare triple {12798#(<= ~counter~0 2)} ~cond := #in~cond; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,283 INFO L290 TraceCheckUtils]: 39: Hoare triple {12798#(<= ~counter~0 2)} assume !(0 == ~cond); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,283 INFO L290 TraceCheckUtils]: 40: Hoare triple {12798#(<= ~counter~0 2)} assume true; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,284 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12798#(<= ~counter~0 2)} {12798#(<= ~counter~0 2)} #87#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,284 INFO L290 TraceCheckUtils]: 42: Hoare triple {12798#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,284 INFO L272 TraceCheckUtils]: 43: Hoare triple {12798#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,285 INFO L290 TraceCheckUtils]: 44: Hoare triple {12798#(<= ~counter~0 2)} ~cond := #in~cond; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,285 INFO L290 TraceCheckUtils]: 45: Hoare triple {12798#(<= ~counter~0 2)} assume !(0 == ~cond); {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,285 INFO L290 TraceCheckUtils]: 46: Hoare triple {12798#(<= ~counter~0 2)} assume true; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,286 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12798#(<= ~counter~0 2)} {12798#(<= ~counter~0 2)} #89#return; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,286 INFO L290 TraceCheckUtils]: 48: Hoare triple {12798#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {12798#(<= ~counter~0 2)} is VALID [2022-04-08 11:26:13,286 INFO L290 TraceCheckUtils]: 49: Hoare triple {12798#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,287 INFO L290 TraceCheckUtils]: 50: Hoare triple {12871#(<= ~counter~0 3)} assume !!(#t~post7 < 50);havoc #t~post7; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,287 INFO L272 TraceCheckUtils]: 51: Hoare triple {12871#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,287 INFO L290 TraceCheckUtils]: 52: Hoare triple {12871#(<= ~counter~0 3)} ~cond := #in~cond; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,288 INFO L290 TraceCheckUtils]: 53: Hoare triple {12871#(<= ~counter~0 3)} assume !(0 == ~cond); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,288 INFO L290 TraceCheckUtils]: 54: Hoare triple {12871#(<= ~counter~0 3)} assume true; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,288 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12871#(<= ~counter~0 3)} {12871#(<= ~counter~0 3)} #83#return; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,289 INFO L272 TraceCheckUtils]: 56: Hoare triple {12871#(<= ~counter~0 3)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,289 INFO L290 TraceCheckUtils]: 57: Hoare triple {12871#(<= ~counter~0 3)} ~cond := #in~cond; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,289 INFO L290 TraceCheckUtils]: 58: Hoare triple {12871#(<= ~counter~0 3)} assume !(0 == ~cond); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,289 INFO L290 TraceCheckUtils]: 59: Hoare triple {12871#(<= ~counter~0 3)} assume true; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,290 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {12871#(<= ~counter~0 3)} {12871#(<= ~counter~0 3)} #85#return; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,290 INFO L272 TraceCheckUtils]: 61: Hoare triple {12871#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,290 INFO L290 TraceCheckUtils]: 62: Hoare triple {12871#(<= ~counter~0 3)} ~cond := #in~cond; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,291 INFO L290 TraceCheckUtils]: 63: Hoare triple {12871#(<= ~counter~0 3)} assume !(0 == ~cond); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,291 INFO L290 TraceCheckUtils]: 64: Hoare triple {12871#(<= ~counter~0 3)} assume true; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,291 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {12871#(<= ~counter~0 3)} {12871#(<= ~counter~0 3)} #87#return; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,292 INFO L290 TraceCheckUtils]: 66: Hoare triple {12871#(<= ~counter~0 3)} assume !(~r~0 >= 2 * ~b~0); {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,292 INFO L290 TraceCheckUtils]: 67: Hoare triple {12871#(<= ~counter~0 3)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {12871#(<= ~counter~0 3)} is VALID [2022-04-08 11:26:13,292 INFO L290 TraceCheckUtils]: 68: Hoare triple {12871#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,293 INFO L290 TraceCheckUtils]: 69: Hoare triple {12929#(<= ~counter~0 4)} assume !!(#t~post6 < 50);havoc #t~post6; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,293 INFO L272 TraceCheckUtils]: 70: Hoare triple {12929#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,293 INFO L290 TraceCheckUtils]: 71: Hoare triple {12929#(<= ~counter~0 4)} ~cond := #in~cond; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,293 INFO L290 TraceCheckUtils]: 72: Hoare triple {12929#(<= ~counter~0 4)} assume !(0 == ~cond); {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,294 INFO L290 TraceCheckUtils]: 73: Hoare triple {12929#(<= ~counter~0 4)} assume true; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,294 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {12929#(<= ~counter~0 4)} {12929#(<= ~counter~0 4)} #79#return; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,295 INFO L272 TraceCheckUtils]: 75: Hoare triple {12929#(<= ~counter~0 4)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,295 INFO L290 TraceCheckUtils]: 76: Hoare triple {12929#(<= ~counter~0 4)} ~cond := #in~cond; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,295 INFO L290 TraceCheckUtils]: 77: Hoare triple {12929#(<= ~counter~0 4)} assume !(0 == ~cond); {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,295 INFO L290 TraceCheckUtils]: 78: Hoare triple {12929#(<= ~counter~0 4)} assume true; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,296 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {12929#(<= ~counter~0 4)} {12929#(<= ~counter~0 4)} #81#return; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,296 INFO L290 TraceCheckUtils]: 80: Hoare triple {12929#(<= ~counter~0 4)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {12929#(<= ~counter~0 4)} is VALID [2022-04-08 11:26:13,296 INFO L290 TraceCheckUtils]: 81: Hoare triple {12929#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12969#(<= |main_#t~post7| 4)} is VALID [2022-04-08 11:26:13,297 INFO L290 TraceCheckUtils]: 82: Hoare triple {12969#(<= |main_#t~post7| 4)} assume !(#t~post7 < 50);havoc #t~post7; {12717#false} is VALID [2022-04-08 11:26:13,297 INFO L290 TraceCheckUtils]: 83: Hoare triple {12717#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {12717#false} is VALID [2022-04-08 11:26:13,297 INFO L290 TraceCheckUtils]: 84: Hoare triple {12717#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12717#false} is VALID [2022-04-08 11:26:13,297 INFO L290 TraceCheckUtils]: 85: Hoare triple {12717#false} assume !(#t~post6 < 50);havoc #t~post6; {12717#false} is VALID [2022-04-08 11:26:13,297 INFO L272 TraceCheckUtils]: 86: Hoare triple {12717#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12717#false} is VALID [2022-04-08 11:26:13,297 INFO L290 TraceCheckUtils]: 87: Hoare triple {12717#false} ~cond := #in~cond; {12717#false} is VALID [2022-04-08 11:26:13,297 INFO L290 TraceCheckUtils]: 88: Hoare triple {12717#false} assume 0 == ~cond; {12717#false} is VALID [2022-04-08 11:26:13,297 INFO L290 TraceCheckUtils]: 89: Hoare triple {12717#false} assume !false; {12717#false} is VALID [2022-04-08 11:26:13,298 INFO L134 CoverageAnalysis]: Checked inductivity of 262 backedges. 27 proven. 191 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-08 11:26:13,298 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:26:13,624 INFO L290 TraceCheckUtils]: 89: Hoare triple {12717#false} assume !false; {12717#false} is VALID [2022-04-08 11:26:13,624 INFO L290 TraceCheckUtils]: 88: Hoare triple {12717#false} assume 0 == ~cond; {12717#false} is VALID [2022-04-08 11:26:13,624 INFO L290 TraceCheckUtils]: 87: Hoare triple {12717#false} ~cond := #in~cond; {12717#false} is VALID [2022-04-08 11:26:13,624 INFO L272 TraceCheckUtils]: 86: Hoare triple {12717#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12717#false} is VALID [2022-04-08 11:26:13,624 INFO L290 TraceCheckUtils]: 85: Hoare triple {12717#false} assume !(#t~post6 < 50);havoc #t~post6; {12717#false} is VALID [2022-04-08 11:26:13,625 INFO L290 TraceCheckUtils]: 84: Hoare triple {12717#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12717#false} is VALID [2022-04-08 11:26:13,625 INFO L290 TraceCheckUtils]: 83: Hoare triple {12717#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {12717#false} is VALID [2022-04-08 11:26:13,625 INFO L290 TraceCheckUtils]: 82: Hoare triple {13015#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {12717#false} is VALID [2022-04-08 11:26:13,625 INFO L290 TraceCheckUtils]: 81: Hoare triple {13019#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13015#(< |main_#t~post7| 50)} is VALID [2022-04-08 11:26:13,625 INFO L290 TraceCheckUtils]: 80: Hoare triple {13019#(< ~counter~0 50)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {13019#(< ~counter~0 50)} is VALID [2022-04-08 11:26:13,626 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {12716#true} {13019#(< ~counter~0 50)} #81#return; {13019#(< ~counter~0 50)} is VALID [2022-04-08 11:26:13,626 INFO L290 TraceCheckUtils]: 78: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,626 INFO L290 TraceCheckUtils]: 77: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,626 INFO L290 TraceCheckUtils]: 76: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,626 INFO L272 TraceCheckUtils]: 75: Hoare triple {13019#(< ~counter~0 50)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,627 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {12716#true} {13019#(< ~counter~0 50)} #79#return; {13019#(< ~counter~0 50)} is VALID [2022-04-08 11:26:13,627 INFO L290 TraceCheckUtils]: 73: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,627 INFO L290 TraceCheckUtils]: 72: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,627 INFO L290 TraceCheckUtils]: 71: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,627 INFO L272 TraceCheckUtils]: 70: Hoare triple {13019#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,627 INFO L290 TraceCheckUtils]: 69: Hoare triple {13019#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {13019#(< ~counter~0 50)} is VALID [2022-04-08 11:26:13,628 INFO L290 TraceCheckUtils]: 68: Hoare triple {13059#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13019#(< ~counter~0 50)} is VALID [2022-04-08 11:26:13,628 INFO L290 TraceCheckUtils]: 67: Hoare triple {13059#(< ~counter~0 49)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {13059#(< ~counter~0 49)} is VALID [2022-04-08 11:26:13,628 INFO L290 TraceCheckUtils]: 66: Hoare triple {13059#(< ~counter~0 49)} assume !(~r~0 >= 2 * ~b~0); {13059#(< ~counter~0 49)} is VALID [2022-04-08 11:26:13,629 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {12716#true} {13059#(< ~counter~0 49)} #87#return; {13059#(< ~counter~0 49)} is VALID [2022-04-08 11:26:13,629 INFO L290 TraceCheckUtils]: 64: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,629 INFO L290 TraceCheckUtils]: 63: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,629 INFO L290 TraceCheckUtils]: 62: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,629 INFO L272 TraceCheckUtils]: 61: Hoare triple {13059#(< ~counter~0 49)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,630 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {12716#true} {13059#(< ~counter~0 49)} #85#return; {13059#(< ~counter~0 49)} is VALID [2022-04-08 11:26:13,630 INFO L290 TraceCheckUtils]: 59: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,630 INFO L290 TraceCheckUtils]: 58: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,630 INFO L290 TraceCheckUtils]: 57: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,630 INFO L272 TraceCheckUtils]: 56: Hoare triple {13059#(< ~counter~0 49)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,630 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12716#true} {13059#(< ~counter~0 49)} #83#return; {13059#(< ~counter~0 49)} is VALID [2022-04-08 11:26:13,630 INFO L290 TraceCheckUtils]: 54: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,630 INFO L290 TraceCheckUtils]: 53: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,630 INFO L290 TraceCheckUtils]: 52: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,631 INFO L272 TraceCheckUtils]: 51: Hoare triple {13059#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,631 INFO L290 TraceCheckUtils]: 50: Hoare triple {13059#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {13059#(< ~counter~0 49)} is VALID [2022-04-08 11:26:13,631 INFO L290 TraceCheckUtils]: 49: Hoare triple {13117#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13059#(< ~counter~0 49)} is VALID [2022-04-08 11:26:13,631 INFO L290 TraceCheckUtils]: 48: Hoare triple {13117#(< ~counter~0 48)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {13117#(< ~counter~0 48)} is VALID [2022-04-08 11:26:13,632 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12716#true} {13117#(< ~counter~0 48)} #89#return; {13117#(< ~counter~0 48)} is VALID [2022-04-08 11:26:13,632 INFO L290 TraceCheckUtils]: 46: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,632 INFO L290 TraceCheckUtils]: 45: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,632 INFO L290 TraceCheckUtils]: 44: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,632 INFO L272 TraceCheckUtils]: 43: Hoare triple {13117#(< ~counter~0 48)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,632 INFO L290 TraceCheckUtils]: 42: Hoare triple {13117#(< ~counter~0 48)} assume !!(~r~0 >= 2 * ~b~0); {13117#(< ~counter~0 48)} is VALID [2022-04-08 11:26:13,633 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12716#true} {13117#(< ~counter~0 48)} #87#return; {13117#(< ~counter~0 48)} is VALID [2022-04-08 11:26:13,633 INFO L290 TraceCheckUtils]: 40: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,633 INFO L290 TraceCheckUtils]: 39: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,633 INFO L290 TraceCheckUtils]: 38: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,633 INFO L272 TraceCheckUtils]: 37: Hoare triple {13117#(< ~counter~0 48)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,634 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {12716#true} {13117#(< ~counter~0 48)} #85#return; {13117#(< ~counter~0 48)} is VALID [2022-04-08 11:26:13,634 INFO L290 TraceCheckUtils]: 35: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,634 INFO L290 TraceCheckUtils]: 34: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,634 INFO L290 TraceCheckUtils]: 33: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,634 INFO L272 TraceCheckUtils]: 32: Hoare triple {13117#(< ~counter~0 48)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,634 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {12716#true} {13117#(< ~counter~0 48)} #83#return; {13117#(< ~counter~0 48)} is VALID [2022-04-08 11:26:13,634 INFO L290 TraceCheckUtils]: 30: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,634 INFO L290 TraceCheckUtils]: 29: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,634 INFO L290 TraceCheckUtils]: 28: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,635 INFO L272 TraceCheckUtils]: 27: Hoare triple {13117#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,635 INFO L290 TraceCheckUtils]: 26: Hoare triple {13117#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {13117#(< ~counter~0 48)} is VALID [2022-04-08 11:26:13,650 INFO L290 TraceCheckUtils]: 25: Hoare triple {13190#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13117#(< ~counter~0 48)} is VALID [2022-04-08 11:26:13,651 INFO L290 TraceCheckUtils]: 24: Hoare triple {13190#(< ~counter~0 47)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {13190#(< ~counter~0 47)} is VALID [2022-04-08 11:26:13,652 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12716#true} {13190#(< ~counter~0 47)} #81#return; {13190#(< ~counter~0 47)} is VALID [2022-04-08 11:26:13,652 INFO L290 TraceCheckUtils]: 22: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,652 INFO L290 TraceCheckUtils]: 21: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,652 INFO L290 TraceCheckUtils]: 20: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,652 INFO L272 TraceCheckUtils]: 19: Hoare triple {13190#(< ~counter~0 47)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,653 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12716#true} {13190#(< ~counter~0 47)} #79#return; {13190#(< ~counter~0 47)} is VALID [2022-04-08 11:26:13,653 INFO L290 TraceCheckUtils]: 17: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,653 INFO L290 TraceCheckUtils]: 16: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,653 INFO L290 TraceCheckUtils]: 15: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,653 INFO L272 TraceCheckUtils]: 14: Hoare triple {13190#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,654 INFO L290 TraceCheckUtils]: 13: Hoare triple {13190#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {13190#(< ~counter~0 47)} is VALID [2022-04-08 11:26:13,654 INFO L290 TraceCheckUtils]: 12: Hoare triple {13230#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13190#(< ~counter~0 47)} is VALID [2022-04-08 11:26:13,655 INFO L290 TraceCheckUtils]: 11: Hoare triple {13230#(< ~counter~0 46)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {13230#(< ~counter~0 46)} is VALID [2022-04-08 11:26:13,655 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12716#true} {13230#(< ~counter~0 46)} #77#return; {13230#(< ~counter~0 46)} is VALID [2022-04-08 11:26:13,655 INFO L290 TraceCheckUtils]: 9: Hoare triple {12716#true} assume true; {12716#true} is VALID [2022-04-08 11:26:13,656 INFO L290 TraceCheckUtils]: 8: Hoare triple {12716#true} assume !(0 == ~cond); {12716#true} is VALID [2022-04-08 11:26:13,656 INFO L290 TraceCheckUtils]: 7: Hoare triple {12716#true} ~cond := #in~cond; {12716#true} is VALID [2022-04-08 11:26:13,656 INFO L272 TraceCheckUtils]: 6: Hoare triple {13230#(< ~counter~0 46)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12716#true} is VALID [2022-04-08 11:26:13,656 INFO L290 TraceCheckUtils]: 5: Hoare triple {13230#(< ~counter~0 46)} 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; {13230#(< ~counter~0 46)} is VALID [2022-04-08 11:26:13,657 INFO L272 TraceCheckUtils]: 4: Hoare triple {13230#(< ~counter~0 46)} call #t~ret8 := main(); {13230#(< ~counter~0 46)} is VALID [2022-04-08 11:26:13,657 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13230#(< ~counter~0 46)} {12716#true} #93#return; {13230#(< ~counter~0 46)} is VALID [2022-04-08 11:26:13,657 INFO L290 TraceCheckUtils]: 2: Hoare triple {13230#(< ~counter~0 46)} assume true; {13230#(< ~counter~0 46)} is VALID [2022-04-08 11:26:13,658 INFO L290 TraceCheckUtils]: 1: Hoare triple {12716#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; {13230#(< ~counter~0 46)} is VALID [2022-04-08 11:26:13,658 INFO L272 TraceCheckUtils]: 0: Hoare triple {12716#true} call ULTIMATE.init(); {12716#true} is VALID [2022-04-08 11:26:13,658 INFO L134 CoverageAnalysis]: Checked inductivity of 262 backedges. 27 proven. 15 refuted. 0 times theorem prover too weak. 220 trivial. 0 not checked. [2022-04-08 11:26:13,659 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:26:13,659 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [863548477] [2022-04-08 11:26:13,659 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:26:13,659 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [611792723] [2022-04-08 11:26:13,659 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [611792723] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:26:13,659 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:26:13,659 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 11:26:13,659 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:26:13,659 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [277903187] [2022-04-08 11:26:13,659 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [277903187] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:26:13,659 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:26:13,660 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 11:26:13,660 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1548411979] [2022-04-08 11:26:13,660 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:26:13,660 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) Word has length 90 [2022-04-08 11:26:13,660 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:26:13,660 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 11:26:13,705 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:26:13,705 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 11:26:13,706 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:26:13,706 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 11:26:13,706 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 11:26:13,706 INFO L87 Difference]: Start difference. First operand 168 states and 206 transitions. Second operand has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 11:26:14,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:14,198 INFO L93 Difference]: Finished difference Result 269 states and 336 transitions. [2022-04-08 11:26:14,198 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 11:26:14,198 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) Word has length 90 [2022-04-08 11:26:14,198 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:26:14,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 11:26:14,200 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 143 transitions. [2022-04-08 11:26:14,200 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 11:26:14,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 143 transitions. [2022-04-08 11:26:14,201 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 143 transitions. [2022-04-08 11:26:14,292 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:26:14,295 INFO L225 Difference]: With dead ends: 269 [2022-04-08 11:26:14,295 INFO L226 Difference]: Without dead ends: 196 [2022-04-08 11:26:14,295 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 182 GetRequests, 167 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=107, Invalid=165, Unknown=0, NotChecked=0, Total=272 [2022-04-08 11:26:14,296 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 46 mSDsluCounter, 114 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 117 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 11:26:14,296 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 169 Invalid, 117 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 11:26:14,296 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 196 states. [2022-04-08 11:26:14,542 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 196 to 196. [2022-04-08 11:26:14,543 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:26:14,543 INFO L82 GeneralOperation]: Start isEquivalent. First operand 196 states. Second operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 11:26:14,543 INFO L74 IsIncluded]: Start isIncluded. First operand 196 states. Second operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 11:26:14,544 INFO L87 Difference]: Start difference. First operand 196 states. Second operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 11:26:14,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:14,547 INFO L93 Difference]: Finished difference Result 196 states and 232 transitions. [2022-04-08 11:26:14,547 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 232 transitions. [2022-04-08 11:26:14,547 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:26:14,547 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:26:14,547 INFO L74 IsIncluded]: Start isIncluded. First operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) Second operand 196 states. [2022-04-08 11:26:14,548 INFO L87 Difference]: Start difference. First operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) Second operand 196 states. [2022-04-08 11:26:14,551 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:26:14,551 INFO L93 Difference]: Finished difference Result 196 states and 232 transitions. [2022-04-08 11:26:14,551 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 232 transitions. [2022-04-08 11:26:14,551 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:26:14,551 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:26:14,551 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:26:14,551 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:26:14,552 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 196 states, 127 states have (on average 1.1338582677165354) internal successors, (144), 129 states have internal predecessors, (144), 45 states have call successors, (45), 24 states have call predecessors, (45), 23 states have return successors, (43), 42 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 11:26:14,555 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 196 states to 196 states and 232 transitions. [2022-04-08 11:26:14,555 INFO L78 Accepts]: Start accepts. Automaton has 196 states and 232 transitions. Word has length 90 [2022-04-08 11:26:14,555 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:26:14,555 INFO L478 AbstractCegarLoop]: Abstraction has 196 states and 232 transitions. [2022-04-08 11:26:14,555 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.125) internal successors, (41), 7 states have internal predecessors, (41), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-08 11:26:14,555 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 196 states and 232 transitions. [2022-04-08 11:26:14,831 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 232 edges. 232 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:26:14,831 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 232 transitions. [2022-04-08 11:26:14,832 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 107 [2022-04-08 11:26:14,832 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:26:14,832 INFO L499 BasicCegarLoop]: trace histogram [15, 14, 14, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-08 11:26:14,848 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Ended with exit code 0 [2022-04-08 11:26:15,032 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-08 11:26:15,033 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:26:15,033 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:26:15,033 INFO L85 PathProgramCache]: Analyzing trace with hash 447330249, now seen corresponding path program 3 times [2022-04-08 11:26:15,033 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:26:15,033 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [491942577] [2022-04-08 11:26:47,482 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:26:47,483 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:26:47,483 INFO L85 PathProgramCache]: Analyzing trace with hash 447330249, now seen corresponding path program 4 times [2022-04-08 11:26:47,483 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:26:47,483 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1819252172] [2022-04-08 11:26:47,483 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:26:47,483 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:26:47,494 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:26:47,494 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1762543645] [2022-04-08 11:26:47,494 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:26:47,495 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:26:47,495 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:26:47,495 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:26:47,496 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-08 11:26:47,559 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:26:47,560 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:26:47,560 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-08 11:26:47,581 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:26:47,582 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:26:49,311 INFO L272 TraceCheckUtils]: 0: Hoare triple {14597#true} call ULTIMATE.init(); {14597#true} is VALID [2022-04-08 11:26:49,312 INFO L290 TraceCheckUtils]: 1: Hoare triple {14597#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; {14597#true} is VALID [2022-04-08 11:26:49,312 INFO L290 TraceCheckUtils]: 2: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,312 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14597#true} {14597#true} #93#return; {14597#true} is VALID [2022-04-08 11:26:49,312 INFO L272 TraceCheckUtils]: 4: Hoare triple {14597#true} call #t~ret8 := main(); {14597#true} is VALID [2022-04-08 11:26:49,312 INFO L290 TraceCheckUtils]: 5: Hoare triple {14597#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; {14597#true} is VALID [2022-04-08 11:26:49,312 INFO L272 TraceCheckUtils]: 6: Hoare triple {14597#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:26:49,312 INFO L290 TraceCheckUtils]: 7: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,312 INFO L290 TraceCheckUtils]: 8: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,312 INFO L290 TraceCheckUtils]: 9: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,312 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14597#true} {14597#true} #77#return; {14597#true} is VALID [2022-04-08 11:26:49,313 INFO L290 TraceCheckUtils]: 11: Hoare triple {14597#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {14635#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,313 INFO L290 TraceCheckUtils]: 12: Hoare triple {14635#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14635#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,313 INFO L290 TraceCheckUtils]: 13: Hoare triple {14635#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {14635#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,313 INFO L272 TraceCheckUtils]: 14: Hoare triple {14635#(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)); {14597#true} is VALID [2022-04-08 11:26:49,313 INFO L290 TraceCheckUtils]: 15: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,313 INFO L290 TraceCheckUtils]: 16: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,314 INFO L290 TraceCheckUtils]: 17: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,314 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14597#true} {14635#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {14635#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,314 INFO L272 TraceCheckUtils]: 19: Hoare triple {14635#(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)); {14597#true} is VALID [2022-04-08 11:26:49,314 INFO L290 TraceCheckUtils]: 20: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,314 INFO L290 TraceCheckUtils]: 21: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,314 INFO L290 TraceCheckUtils]: 22: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,315 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14597#true} {14635#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {14635#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,315 INFO L290 TraceCheckUtils]: 24: Hoare triple {14635#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {14675#(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-08 11:26:49,316 INFO L290 TraceCheckUtils]: 25: Hoare triple {14675#(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; {14675#(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-08 11:26:49,316 INFO L290 TraceCheckUtils]: 26: Hoare triple {14675#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {14675#(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-08 11:26:49,316 INFO L272 TraceCheckUtils]: 27: Hoare triple {14675#(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)); {14597#true} is VALID [2022-04-08 11:26:49,316 INFO L290 TraceCheckUtils]: 28: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,316 INFO L290 TraceCheckUtils]: 29: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,316 INFO L290 TraceCheckUtils]: 30: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,317 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14597#true} {14675#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {14675#(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-08 11:26:49,317 INFO L272 TraceCheckUtils]: 32: Hoare triple {14675#(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)); {14597#true} is VALID [2022-04-08 11:26:49,317 INFO L290 TraceCheckUtils]: 33: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,317 INFO L290 TraceCheckUtils]: 34: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,317 INFO L290 TraceCheckUtils]: 35: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,318 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14597#true} {14675#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {14675#(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-08 11:26:49,318 INFO L272 TraceCheckUtils]: 37: Hoare triple {14675#(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)); {14597#true} is VALID [2022-04-08 11:26:49,318 INFO L290 TraceCheckUtils]: 38: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,318 INFO L290 TraceCheckUtils]: 39: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,318 INFO L290 TraceCheckUtils]: 40: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,318 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14597#true} {14675#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {14675#(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-08 11:26:49,319 INFO L290 TraceCheckUtils]: 42: Hoare triple {14675#(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); {14675#(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-08 11:26:49,319 INFO L272 TraceCheckUtils]: 43: Hoare triple {14675#(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)); {14597#true} is VALID [2022-04-08 11:26:49,319 INFO L290 TraceCheckUtils]: 44: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,319 INFO L290 TraceCheckUtils]: 45: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,319 INFO L290 TraceCheckUtils]: 46: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,331 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {14597#true} {14675#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {14675#(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-08 11:26:49,332 INFO L290 TraceCheckUtils]: 48: Hoare triple {14675#(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; {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,332 INFO L290 TraceCheckUtils]: 49: Hoare triple {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,333 INFO L290 TraceCheckUtils]: 50: Hoare triple {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,333 INFO L272 TraceCheckUtils]: 51: Hoare triple {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:26:49,333 INFO L290 TraceCheckUtils]: 52: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,333 INFO L290 TraceCheckUtils]: 53: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,333 INFO L290 TraceCheckUtils]: 54: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,333 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14597#true} {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} #83#return; {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,334 INFO L272 TraceCheckUtils]: 56: Hoare triple {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:26:49,334 INFO L290 TraceCheckUtils]: 57: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,334 INFO L290 TraceCheckUtils]: 58: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,334 INFO L290 TraceCheckUtils]: 59: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,334 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14597#true} {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} #85#return; {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,334 INFO L272 TraceCheckUtils]: 61: Hoare triple {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:26:49,334 INFO L290 TraceCheckUtils]: 62: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,334 INFO L290 TraceCheckUtils]: 63: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,334 INFO L290 TraceCheckUtils]: 64: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,335 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {14597#true} {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} #87#return; {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,335 INFO L290 TraceCheckUtils]: 66: Hoare triple {14748#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} assume !(~r~0 >= 2 * ~b~0); {14803#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (not (<= (* main_~b~0 2) main_~r~0)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:26:49,336 INFO L290 TraceCheckUtils]: 67: Hoare triple {14803#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (not (<= (* main_~b~0 2) main_~r~0)) (<= (div main_~a~0 2) 1) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:49,337 INFO L290 TraceCheckUtils]: 68: Hoare triple {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:49,337 INFO L290 TraceCheckUtils]: 69: Hoare triple {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} assume !!(#t~post6 < 50);havoc #t~post6; {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:49,337 INFO L272 TraceCheckUtils]: 70: Hoare triple {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:26:49,337 INFO L290 TraceCheckUtils]: 71: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,337 INFO L290 TraceCheckUtils]: 72: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,337 INFO L290 TraceCheckUtils]: 73: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,338 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {14597#true} {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #79#return; {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:49,338 INFO L272 TraceCheckUtils]: 75: Hoare triple {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:26:49,338 INFO L290 TraceCheckUtils]: 76: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,338 INFO L290 TraceCheckUtils]: 77: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,338 INFO L290 TraceCheckUtils]: 78: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,338 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {14597#true} {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #81#return; {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:49,339 INFO L290 TraceCheckUtils]: 80: Hoare triple {14807#(and (not (<= (* main_~y~0 4) main_~x~0)) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {14847#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:49,339 INFO L290 TraceCheckUtils]: 81: Hoare triple {14847#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14847#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:49,340 INFO L290 TraceCheckUtils]: 82: Hoare triple {14847#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {14847#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:49,340 INFO L272 TraceCheckUtils]: 83: Hoare triple {14847#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:26:49,340 INFO L290 TraceCheckUtils]: 84: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,340 INFO L290 TraceCheckUtils]: 85: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,340 INFO L290 TraceCheckUtils]: 86: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,340 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {14597#true} {14847#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #83#return; {14847#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} is VALID [2022-04-08 11:26:49,340 INFO L272 TraceCheckUtils]: 88: Hoare triple {14847#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:26:49,341 INFO L290 TraceCheckUtils]: 89: Hoare triple {14597#true} ~cond := #in~cond; {14875#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:26:49,341 INFO L290 TraceCheckUtils]: 90: Hoare triple {14875#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {14879#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:26:49,341 INFO L290 TraceCheckUtils]: 91: Hoare triple {14879#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14879#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:26:49,342 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {14879#(not (= |__VERIFIER_assert_#in~cond| 0))} {14847#(and (= main_~a~0 1) (not (<= (* main_~y~0 4) main_~x~0)) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (<= (div main_~q~0 2) 1) (= (mod main_~q~0 2) 0) (= main_~r~0 (+ main_~x~0 (* (- 2) main_~y~0))))} #85#return; {14886#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} is VALID [2022-04-08 11:26:49,342 INFO L272 TraceCheckUtils]: 93: Hoare triple {14886#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:26:49,342 INFO L290 TraceCheckUtils]: 94: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:26:49,342 INFO L290 TraceCheckUtils]: 95: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:26:49,342 INFO L290 TraceCheckUtils]: 96: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:26:49,342 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {14597#true} {14886#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} #87#return; {14886#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} is VALID [2022-04-08 11:26:49,343 INFO L290 TraceCheckUtils]: 98: Hoare triple {14886#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} assume !(~r~0 >= 2 * ~b~0); {14886#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} is VALID [2022-04-08 11:26:49,344 INFO L290 TraceCheckUtils]: 99: Hoare triple {14886#(and (= main_~a~0 1) (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 2))) (< main_~x~0 (* main_~y~0 4)))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {14908#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} is VALID [2022-04-08 11:26:49,345 INFO L290 TraceCheckUtils]: 100: Hoare triple {14908#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14908#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} is VALID [2022-04-08 11:26:49,345 INFO L290 TraceCheckUtils]: 101: Hoare triple {14908#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} assume !(#t~post6 < 50);havoc #t~post6; {14908#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} is VALID [2022-04-08 11:26:49,346 INFO L272 TraceCheckUtils]: 102: Hoare triple {14908#(and (<= 0 main_~r~0) (= (+ (* main_~y~0 (+ (- 1) main_~q~0)) main_~y~0 main_~r~0) main_~x~0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~r~0 (* main_~y~0 3)) main_~x~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14918#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:26:49,346 INFO L290 TraceCheckUtils]: 103: Hoare triple {14918#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14922#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:26:49,346 INFO L290 TraceCheckUtils]: 104: Hoare triple {14922#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14598#false} is VALID [2022-04-08 11:26:49,346 INFO L290 TraceCheckUtils]: 105: Hoare triple {14598#false} assume !false; {14598#false} is VALID [2022-04-08 11:26:49,347 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 63 proven. 32 refuted. 0 times theorem prover too weak. 325 trivial. 0 not checked. [2022-04-08 11:26:49,347 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:27:07,309 INFO L290 TraceCheckUtils]: 105: Hoare triple {14598#false} assume !false; {14598#false} is VALID [2022-04-08 11:27:07,310 INFO L290 TraceCheckUtils]: 104: Hoare triple {14922#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14598#false} is VALID [2022-04-08 11:27:07,310 INFO L290 TraceCheckUtils]: 103: Hoare triple {14918#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14922#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:27:07,311 INFO L272 TraceCheckUtils]: 102: Hoare triple {14938#(= (+ (* 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)); {14918#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:27:07,311 INFO L290 TraceCheckUtils]: 101: Hoare triple {14938#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(#t~post6 < 50);havoc #t~post6; {14938#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:27:07,311 INFO L290 TraceCheckUtils]: 100: Hoare triple {14938#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14938#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:27:07,318 INFO L290 TraceCheckUtils]: 99: Hoare triple {14948#(= 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; {14938#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:27:07,318 INFO L290 TraceCheckUtils]: 98: Hoare triple {14948#(= 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); {14948#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:27:07,319 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {14597#true} {14948#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #87#return; {14948#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:27:07,319 INFO L290 TraceCheckUtils]: 96: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,319 INFO L290 TraceCheckUtils]: 95: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,319 INFO L290 TraceCheckUtils]: 94: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,319 INFO L272 TraceCheckUtils]: 93: Hoare triple {14948#(= 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)); {14597#true} is VALID [2022-04-08 11:27:07,320 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {14879#(not (= |__VERIFIER_assert_#in~cond| 0))} {14970#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} #85#return; {14948#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:27:07,321 INFO L290 TraceCheckUtils]: 91: Hoare triple {14879#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14879#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:27:07,321 INFO L290 TraceCheckUtils]: 90: Hoare triple {14980#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {14879#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:27:07,321 INFO L290 TraceCheckUtils]: 89: Hoare triple {14597#true} ~cond := #in~cond; {14980#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:27:07,321 INFO L272 TraceCheckUtils]: 88: Hoare triple {14970#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* 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)); {14597#true} is VALID [2022-04-08 11:27:07,322 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {14597#true} {14970#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} #83#return; {14970#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} is VALID [2022-04-08 11:27:07,322 INFO L290 TraceCheckUtils]: 86: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,322 INFO L290 TraceCheckUtils]: 85: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,322 INFO L290 TraceCheckUtils]: 84: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,322 INFO L272 TraceCheckUtils]: 83: Hoare triple {14970#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* 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)); {14597#true} is VALID [2022-04-08 11:27:07,323 INFO L290 TraceCheckUtils]: 82: Hoare triple {14970#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {14970#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} is VALID [2022-04-08 11:27:07,323 INFO L290 TraceCheckUtils]: 81: Hoare triple {14970#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14970#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} is VALID [2022-04-08 11:27:07,323 INFO L290 TraceCheckUtils]: 80: Hoare triple {14597#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {14970#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (not (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)))} is VALID [2022-04-08 11:27:07,324 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {14597#true} {14597#true} #81#return; {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L290 TraceCheckUtils]: 78: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L290 TraceCheckUtils]: 77: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L290 TraceCheckUtils]: 76: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L272 TraceCheckUtils]: 75: Hoare triple {14597#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {14597#true} {14597#true} #79#return; {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L290 TraceCheckUtils]: 73: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L290 TraceCheckUtils]: 72: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L290 TraceCheckUtils]: 71: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L272 TraceCheckUtils]: 70: Hoare triple {14597#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L290 TraceCheckUtils]: 69: Hoare triple {14597#true} assume !!(#t~post6 < 50);havoc #t~post6; {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L290 TraceCheckUtils]: 68: Hoare triple {14597#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L290 TraceCheckUtils]: 67: Hoare triple {14597#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L290 TraceCheckUtils]: 66: Hoare triple {14597#true} assume !(~r~0 >= 2 * ~b~0); {14597#true} is VALID [2022-04-08 11:27:07,324 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {14597#true} {14597#true} #87#return; {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L290 TraceCheckUtils]: 64: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L290 TraceCheckUtils]: 63: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L290 TraceCheckUtils]: 62: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L272 TraceCheckUtils]: 61: Hoare triple {14597#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14597#true} {14597#true} #85#return; {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L290 TraceCheckUtils]: 59: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L290 TraceCheckUtils]: 58: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L290 TraceCheckUtils]: 57: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L272 TraceCheckUtils]: 56: Hoare triple {14597#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14597#true} {14597#true} #83#return; {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L290 TraceCheckUtils]: 54: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L290 TraceCheckUtils]: 53: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L290 TraceCheckUtils]: 52: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L272 TraceCheckUtils]: 51: Hoare triple {14597#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,325 INFO L290 TraceCheckUtils]: 50: Hoare triple {14597#true} assume !!(#t~post7 < 50);havoc #t~post7; {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L290 TraceCheckUtils]: 49: Hoare triple {14597#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L290 TraceCheckUtils]: 48: Hoare triple {14597#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {14597#true} {14597#true} #89#return; {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L290 TraceCheckUtils]: 46: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L290 TraceCheckUtils]: 45: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L290 TraceCheckUtils]: 44: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L272 TraceCheckUtils]: 43: Hoare triple {14597#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L290 TraceCheckUtils]: 42: Hoare triple {14597#true} assume !!(~r~0 >= 2 * ~b~0); {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14597#true} {14597#true} #87#return; {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L290 TraceCheckUtils]: 40: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L290 TraceCheckUtils]: 39: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L290 TraceCheckUtils]: 38: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L272 TraceCheckUtils]: 37: Hoare triple {14597#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,326 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14597#true} {14597#true} #85#return; {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L290 TraceCheckUtils]: 35: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L290 TraceCheckUtils]: 34: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L290 TraceCheckUtils]: 33: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L272 TraceCheckUtils]: 32: Hoare triple {14597#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {14597#true} {14597#true} #83#return; {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L290 TraceCheckUtils]: 30: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L290 TraceCheckUtils]: 29: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L290 TraceCheckUtils]: 28: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L272 TraceCheckUtils]: 27: Hoare triple {14597#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L290 TraceCheckUtils]: 26: Hoare triple {14597#true} assume !!(#t~post7 < 50);havoc #t~post7; {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L290 TraceCheckUtils]: 25: Hoare triple {14597#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L290 TraceCheckUtils]: 24: Hoare triple {14597#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14597#true} {14597#true} #81#return; {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L290 TraceCheckUtils]: 22: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,327 INFO L290 TraceCheckUtils]: 21: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L290 TraceCheckUtils]: 20: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L272 TraceCheckUtils]: 19: Hoare triple {14597#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14597#true} {14597#true} #79#return; {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L290 TraceCheckUtils]: 17: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L290 TraceCheckUtils]: 16: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L290 TraceCheckUtils]: 15: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L272 TraceCheckUtils]: 14: Hoare triple {14597#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L290 TraceCheckUtils]: 13: Hoare triple {14597#true} assume !!(#t~post6 < 50);havoc #t~post6; {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L290 TraceCheckUtils]: 12: Hoare triple {14597#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L290 TraceCheckUtils]: 11: Hoare triple {14597#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14597#true} {14597#true} #77#return; {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L290 TraceCheckUtils]: 9: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L290 TraceCheckUtils]: 8: Hoare triple {14597#true} assume !(0 == ~cond); {14597#true} is VALID [2022-04-08 11:27:07,328 INFO L290 TraceCheckUtils]: 7: Hoare triple {14597#true} ~cond := #in~cond; {14597#true} is VALID [2022-04-08 11:27:07,329 INFO L272 TraceCheckUtils]: 6: Hoare triple {14597#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14597#true} is VALID [2022-04-08 11:27:07,329 INFO L290 TraceCheckUtils]: 5: Hoare triple {14597#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; {14597#true} is VALID [2022-04-08 11:27:07,329 INFO L272 TraceCheckUtils]: 4: Hoare triple {14597#true} call #t~ret8 := main(); {14597#true} is VALID [2022-04-08 11:27:07,329 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14597#true} {14597#true} #93#return; {14597#true} is VALID [2022-04-08 11:27:07,329 INFO L290 TraceCheckUtils]: 2: Hoare triple {14597#true} assume true; {14597#true} is VALID [2022-04-08 11:27:07,329 INFO L290 TraceCheckUtils]: 1: Hoare triple {14597#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; {14597#true} is VALID [2022-04-08 11:27:07,329 INFO L272 TraceCheckUtils]: 0: Hoare triple {14597#true} call ULTIMATE.init(); {14597#true} is VALID [2022-04-08 11:27:07,329 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 80 proven. 4 refuted. 0 times theorem prover too weak. 336 trivial. 0 not checked. [2022-04-08 11:27:07,329 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:27:07,329 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1819252172] [2022-04-08 11:27:07,329 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:27:07,330 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1762543645] [2022-04-08 11:27:07,330 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1762543645] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:27:07,330 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:27:07,330 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 9] total 18 [2022-04-08 11:27:07,330 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:27:07,331 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [491942577] [2022-04-08 11:27:07,331 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [491942577] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:27:07,331 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:27:07,331 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-08 11:27:07,331 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [169812130] [2022-04-08 11:27:07,331 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:27:07,331 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) Word has length 106 [2022-04-08 11:27:07,331 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:27:07,332 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-08 11:27:07,387 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:27:07,387 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-08 11:27:07,387 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:27:07,387 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-08 11:27:07,388 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=54, Invalid=252, Unknown=0, NotChecked=0, Total=306 [2022-04-08 11:27:07,388 INFO L87 Difference]: Start difference. First operand 196 states and 232 transitions. Second operand has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-08 11:27:10,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:27:10,337 INFO L93 Difference]: Finished difference Result 281 states and 343 transitions. [2022-04-08 11:27:10,337 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 11:27:10,342 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) Word has length 106 [2022-04-08 11:27:10,342 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:27:10,342 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-08 11:27:10,343 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 151 transitions. [2022-04-08 11:27:10,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-08 11:27:10,345 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 151 transitions. [2022-04-08 11:27:10,345 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 151 transitions. [2022-04-08 11:27:10,475 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 151 edges. 151 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:27:10,477 INFO L225 Difference]: With dead ends: 281 [2022-04-08 11:27:10,478 INFO L226 Difference]: Without dead ends: 185 [2022-04-08 11:27:10,478 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 194 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 83 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=67, Invalid=313, Unknown=0, NotChecked=0, Total=380 [2022-04-08 11:27:10,478 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 31 mSDsluCounter, 244 mSDsCounter, 0 mSdLazyCounter, 549 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 293 SdHoareTripleChecker+Invalid, 578 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 549 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:27:10,478 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 293 Invalid, 578 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 549 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-08 11:27:10,480 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 185 states. [2022-04-08 11:27:10,719 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 185 to 184. [2022-04-08 11:27:10,719 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:27:10,720 INFO L82 GeneralOperation]: Start isEquivalent. First operand 185 states. Second operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 11:27:10,720 INFO L74 IsIncluded]: Start isIncluded. First operand 185 states. Second operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 11:27:10,720 INFO L87 Difference]: Start difference. First operand 185 states. Second operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 11:27:10,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:27:10,723 INFO L93 Difference]: Finished difference Result 185 states and 219 transitions. [2022-04-08 11:27:10,723 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 219 transitions. [2022-04-08 11:27:10,724 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:27:10,724 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:27:10,724 INFO L74 IsIncluded]: Start isIncluded. First operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) Second operand 185 states. [2022-04-08 11:27:10,724 INFO L87 Difference]: Start difference. First operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) Second operand 185 states. [2022-04-08 11:27:10,727 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:27:10,727 INFO L93 Difference]: Finished difference Result 185 states and 219 transitions. [2022-04-08 11:27:10,727 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 219 transitions. [2022-04-08 11:27:10,727 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:27:10,727 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:27:10,727 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:27:10,727 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:27:10,728 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 184 states, 118 states have (on average 1.1355932203389831) internal successors, (134), 120 states have internal predecessors, (134), 43 states have call successors, (43), 23 states have call predecessors, (43), 22 states have return successors, (41), 40 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-08 11:27:10,730 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 184 states to 184 states and 218 transitions. [2022-04-08 11:27:10,730 INFO L78 Accepts]: Start accepts. Automaton has 184 states and 218 transitions. Word has length 106 [2022-04-08 11:27:10,731 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:27:10,731 INFO L478 AbstractCegarLoop]: Abstraction has 184 states and 218 transitions. [2022-04-08 11:27:10,731 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.5714285714285716) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 7 states have call predecessors, (16), 7 states have call successors, (16) [2022-04-08 11:27:10,731 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 184 states and 218 transitions. [2022-04-08 11:27:10,967 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 218 edges. 218 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:27:10,968 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 218 transitions. [2022-04-08 11:27:10,970 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 115 [2022-04-08 11:27:10,970 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:27:10,970 INFO L499 BasicCegarLoop]: trace histogram [16, 15, 15, 4, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-08 11:27:10,989 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-08 11:27:11,189 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-08 11:27:11,189 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:27:11,190 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:27:11,190 INFO L85 PathProgramCache]: Analyzing trace with hash 2077207105, now seen corresponding path program 3 times [2022-04-08 11:27:11,190 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:27:11,190 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1148675433] [2022-04-08 11:27:36,594 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:27:36,594 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:27:36,594 INFO L85 PathProgramCache]: Analyzing trace with hash 2077207105, now seen corresponding path program 4 times [2022-04-08 11:27:36,594 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:27:36,594 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [503332666] [2022-04-08 11:27:36,595 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:27:36,595 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:27:36,607 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:27:36,607 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1956937742] [2022-04-08 11:27:36,607 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:27:36,607 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:27:36,607 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:27:36,608 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:27:36,608 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-08 11:27:36,664 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:27:36,664 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:27:36,665 INFO L263 TraceCheckSpWp]: Trace formula consists of 240 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-08 11:27:36,682 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:27:36,683 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:29:21,413 INFO L272 TraceCheckUtils]: 0: Hoare triple {16554#true} call ULTIMATE.init(); {16554#true} is VALID [2022-04-08 11:29:21,413 INFO L290 TraceCheckUtils]: 1: Hoare triple {16554#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; {16554#true} is VALID [2022-04-08 11:29:21,413 INFO L290 TraceCheckUtils]: 2: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,413 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16554#true} {16554#true} #93#return; {16554#true} is VALID [2022-04-08 11:29:21,413 INFO L272 TraceCheckUtils]: 4: Hoare triple {16554#true} call #t~ret8 := main(); {16554#true} is VALID [2022-04-08 11:29:21,413 INFO L290 TraceCheckUtils]: 5: Hoare triple {16554#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; {16554#true} is VALID [2022-04-08 11:29:21,413 INFO L272 TraceCheckUtils]: 6: Hoare triple {16554#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16554#true} is VALID [2022-04-08 11:29:21,413 INFO L290 TraceCheckUtils]: 7: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,413 INFO L290 TraceCheckUtils]: 8: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,413 INFO L290 TraceCheckUtils]: 9: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,414 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16554#true} {16554#true} #77#return; {16554#true} is VALID [2022-04-08 11:29:21,414 INFO L290 TraceCheckUtils]: 11: Hoare triple {16554#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {16592#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:29:21,414 INFO L290 TraceCheckUtils]: 12: Hoare triple {16592#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16592#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:29:21,415 INFO L290 TraceCheckUtils]: 13: Hoare triple {16592#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {16592#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:29:21,415 INFO L272 TraceCheckUtils]: 14: Hoare triple {16592#(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)); {16554#true} is VALID [2022-04-08 11:29:21,415 INFO L290 TraceCheckUtils]: 15: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,415 INFO L290 TraceCheckUtils]: 16: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,415 INFO L290 TraceCheckUtils]: 17: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,415 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {16554#true} {16592#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {16592#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:29:21,415 INFO L272 TraceCheckUtils]: 19: Hoare triple {16592#(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)); {16554#true} is VALID [2022-04-08 11:29:21,416 INFO L290 TraceCheckUtils]: 20: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,416 INFO L290 TraceCheckUtils]: 21: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,416 INFO L290 TraceCheckUtils]: 22: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,416 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16554#true} {16592#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {16592#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:29:21,416 INFO L290 TraceCheckUtils]: 24: Hoare triple {16592#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {16632#(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-08 11:29:21,417 INFO L290 TraceCheckUtils]: 25: Hoare triple {16632#(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; {16632#(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-08 11:29:21,417 INFO L290 TraceCheckUtils]: 26: Hoare triple {16632#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {16632#(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-08 11:29:21,417 INFO L272 TraceCheckUtils]: 27: Hoare triple {16632#(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)); {16554#true} is VALID [2022-04-08 11:29:21,417 INFO L290 TraceCheckUtils]: 28: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,417 INFO L290 TraceCheckUtils]: 29: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,417 INFO L290 TraceCheckUtils]: 30: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,418 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {16554#true} {16632#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {16632#(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-08 11:29:21,418 INFO L272 TraceCheckUtils]: 32: Hoare triple {16632#(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)); {16554#true} is VALID [2022-04-08 11:29:21,418 INFO L290 TraceCheckUtils]: 33: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,418 INFO L290 TraceCheckUtils]: 34: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,418 INFO L290 TraceCheckUtils]: 35: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,419 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16554#true} {16632#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {16632#(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-08 11:29:21,419 INFO L272 TraceCheckUtils]: 37: Hoare triple {16632#(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)); {16554#true} is VALID [2022-04-08 11:29:21,419 INFO L290 TraceCheckUtils]: 38: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,419 INFO L290 TraceCheckUtils]: 39: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,419 INFO L290 TraceCheckUtils]: 40: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,419 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16554#true} {16632#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {16632#(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-08 11:29:21,420 INFO L290 TraceCheckUtils]: 42: Hoare triple {16632#(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); {16632#(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-08 11:29:21,420 INFO L272 TraceCheckUtils]: 43: Hoare triple {16632#(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)); {16554#true} is VALID [2022-04-08 11:29:21,420 INFO L290 TraceCheckUtils]: 44: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,420 INFO L290 TraceCheckUtils]: 45: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,420 INFO L290 TraceCheckUtils]: 46: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,421 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {16554#true} {16632#(and (<= main_~a~0 1) (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {16632#(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-08 11:29:21,421 INFO L290 TraceCheckUtils]: 48: Hoare triple {16632#(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; {16705#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:29:21,422 INFO L290 TraceCheckUtils]: 49: Hoare triple {16705#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16705#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:29:21,422 INFO L290 TraceCheckUtils]: 50: Hoare triple {16705#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {16705#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} is VALID [2022-04-08 11:29:21,422 INFO L272 TraceCheckUtils]: 51: Hoare triple {16705#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {16554#true} is VALID [2022-04-08 11:29:21,423 INFO L290 TraceCheckUtils]: 52: Hoare triple {16554#true} ~cond := #in~cond; {16718#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:29:21,423 INFO L290 TraceCheckUtils]: 53: Hoare triple {16718#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {16722#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:29:21,423 INFO L290 TraceCheckUtils]: 54: Hoare triple {16722#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {16722#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:29:21,424 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {16722#(not (= |__VERIFIER_assert_#in~cond| 0))} {16705#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0))} #83#return; {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:29:21,424 INFO L272 TraceCheckUtils]: 56: Hoare triple {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= 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)); {16554#true} is VALID [2022-04-08 11:29:21,424 INFO L290 TraceCheckUtils]: 57: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,424 INFO L290 TraceCheckUtils]: 58: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,424 INFO L290 TraceCheckUtils]: 59: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,425 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {16554#true} {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #85#return; {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:29:21,425 INFO L272 TraceCheckUtils]: 61: Hoare triple {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {16554#true} is VALID [2022-04-08 11:29:21,425 INFO L290 TraceCheckUtils]: 62: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,425 INFO L290 TraceCheckUtils]: 63: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,425 INFO L290 TraceCheckUtils]: 64: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,426 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {16554#true} {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #87#return; {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:29:21,426 INFO L290 TraceCheckUtils]: 66: Hoare triple {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} assume !!(~r~0 >= 2 * ~b~0); {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:29:21,426 INFO L272 TraceCheckUtils]: 67: Hoare triple {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {16554#true} is VALID [2022-04-08 11:29:21,426 INFO L290 TraceCheckUtils]: 68: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,426 INFO L290 TraceCheckUtils]: 69: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,426 INFO L290 TraceCheckUtils]: 70: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,427 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {16554#true} {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #89#return; {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:29:21,431 INFO L290 TraceCheckUtils]: 72: Hoare triple {16729#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (<= (div (* (- 1) main_~a~0) (- 2)) 1) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:29:21,431 INFO L290 TraceCheckUtils]: 73: Hoare triple {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:29:21,432 INFO L290 TraceCheckUtils]: 74: Hoare triple {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} assume !!(#t~post7 < 50);havoc #t~post7; {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:29:21,432 INFO L272 TraceCheckUtils]: 75: Hoare triple {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {16554#true} is VALID [2022-04-08 11:29:21,432 INFO L290 TraceCheckUtils]: 76: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,432 INFO L290 TraceCheckUtils]: 77: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,432 INFO L290 TraceCheckUtils]: 78: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,433 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {16554#true} {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #83#return; {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:29:21,433 INFO L272 TraceCheckUtils]: 80: Hoare triple {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {16554#true} is VALID [2022-04-08 11:29:21,433 INFO L290 TraceCheckUtils]: 81: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,433 INFO L290 TraceCheckUtils]: 82: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,433 INFO L290 TraceCheckUtils]: 83: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,434 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {16554#true} {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #85#return; {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:29:21,434 INFO L272 TraceCheckUtils]: 85: Hoare triple {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {16554#true} is VALID [2022-04-08 11:29:21,434 INFO L290 TraceCheckUtils]: 86: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,434 INFO L290 TraceCheckUtils]: 87: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,434 INFO L290 TraceCheckUtils]: 88: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,434 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {16554#true} {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} #87#return; {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:29:21,435 INFO L290 TraceCheckUtils]: 90: Hoare triple {16781#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} assume !(~r~0 >= 2 * ~b~0); {16836#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (not (<= (* main_~b~0 2) main_~r~0)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} is VALID [2022-04-08 11:29:21,438 INFO L290 TraceCheckUtils]: 91: Hoare triple {16836#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (<= (div (* (- 1) (div (* (- 1) main_~a~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (not (<= (* main_~b~0 2) main_~r~0)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0) (= (* (* (div (- main_~a~0) (- 2)) main_~y~0) 2) main_~b~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} is VALID [2022-04-08 11:29:21,439 INFO L290 TraceCheckUtils]: 92: Hoare triple {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} is VALID [2022-04-08 11:29:21,440 INFO L290 TraceCheckUtils]: 93: Hoare triple {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} is VALID [2022-04-08 11:29:21,440 INFO L272 TraceCheckUtils]: 94: Hoare triple {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {16554#true} is VALID [2022-04-08 11:29:21,440 INFO L290 TraceCheckUtils]: 95: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,440 INFO L290 TraceCheckUtils]: 96: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,440 INFO L290 TraceCheckUtils]: 97: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,440 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {16554#true} {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} #79#return; {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} is VALID [2022-04-08 11:29:21,440 INFO L272 TraceCheckUtils]: 99: Hoare triple {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {16554#true} is VALID [2022-04-08 11:29:21,440 INFO L290 TraceCheckUtils]: 100: Hoare triple {16554#true} ~cond := #in~cond; {16554#true} is VALID [2022-04-08 11:29:21,441 INFO L290 TraceCheckUtils]: 101: Hoare triple {16554#true} assume !(0 == ~cond); {16554#true} is VALID [2022-04-08 11:29:21,441 INFO L290 TraceCheckUtils]: 102: Hoare triple {16554#true} assume true; {16554#true} is VALID [2022-04-08 11:29:21,441 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {16554#true} {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} #81#return; {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} is VALID [2022-04-08 11:29:21,442 INFO L290 TraceCheckUtils]: 104: Hoare triple {16840#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (* 2 (* (div (- main_~q~0) (- 2)) main_~y~0)) (+ main_~x~0 (* (- 1) main_~r~0))) (<= (div (* (- 1) (div (* (- 1) main_~q~0) (- 2))) (- 2)) 1) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (mod main_~q~0 2) 0) (= (* main_~y~0 2) (* (div (- main_~q~0) (- 2)) main_~y~0)))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {16880#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-08 11:29:21,442 INFO L290 TraceCheckUtils]: 105: Hoare triple {16880#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16880#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-08 11:29:21,443 INFO L290 TraceCheckUtils]: 106: Hoare triple {16880#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} assume !(#t~post7 < 50);havoc #t~post7; {16880#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} is VALID [2022-04-08 11:29:21,445 INFO L290 TraceCheckUtils]: 107: Hoare triple {16880#(and (= main_~a~0 1) (<= main_~y~0 main_~r~0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (= main_~x~0 (+ (* 2 (* main_~y~0 (div (* (- 1) main_~q~0) (- 2)))) main_~r~0)) (< (* main_~r~0 2) main_~x~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {16890#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} is VALID [2022-04-08 11:29:21,446 INFO L290 TraceCheckUtils]: 108: Hoare triple {16890#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16890#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} is VALID [2022-04-08 11:29:21,446 INFO L290 TraceCheckUtils]: 109: Hoare triple {16890#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} assume !(#t~post6 < 50);havoc #t~post6; {16890#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} is VALID [2022-04-08 11:29:21,508 INFO L272 TraceCheckUtils]: 110: Hoare triple {16890#(and (= (* main_~y~0 2) (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0)) (< main_~x~0 (* 4 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) (<= (+ main_~y~0 (* 2 (* (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0))) main_~x~0) (= (mod (+ main_~q~0 1) 2) 0) (= (+ main_~x~0 (* (- 2) (div (+ (* (- 1) main_~q~0) 1) (- 2)) main_~y~0) (* (- 1) main_~y~0)) main_~r~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {16900#(exists ((aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58 Int) (aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 Int) (aux_div_v_main_~q~0_BEFORE_CALL_125_55 Int) (v_main_~y~0_BEFORE_CALL_173 Int)) (and (< (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) 2) (<= (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 2) (+ (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) (* 2 aux_div_v_main_~q~0_BEFORE_CALL_125_55))) (< (+ (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) (* 2 aux_div_v_main_~q~0_BEFORE_CALL_125_55)) (+ 2 (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 2))) (= (* v_main_~y~0_BEFORE_CALL_173 2) (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 v_main_~y~0_BEFORE_CALL_173)) (<= 0 (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58)) (< (+ (* 2 (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 v_main_~y~0_BEFORE_CALL_173)) v_main_~y~0_BEFORE_CALL_173) (+ (* 4 (* v_main_~y~0_BEFORE_CALL_173 aux_div_v_main_~q~0_BEFORE_CALL_125_55)) (* 2 (* v_main_~y~0_BEFORE_CALL_173 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58)))) (<= 1 |__VERIFIER_assert_#in~cond|)))} is VALID [2022-04-08 11:29:21,509 INFO L290 TraceCheckUtils]: 111: Hoare triple {16900#(exists ((aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58 Int) (aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 Int) (aux_div_v_main_~q~0_BEFORE_CALL_125_55 Int) (v_main_~y~0_BEFORE_CALL_173 Int)) (and (< (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) 2) (<= (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 2) (+ (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) (* 2 aux_div_v_main_~q~0_BEFORE_CALL_125_55))) (< (+ (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58) (* 2 aux_div_v_main_~q~0_BEFORE_CALL_125_55)) (+ 2 (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 2))) (= (* v_main_~y~0_BEFORE_CALL_173 2) (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 v_main_~y~0_BEFORE_CALL_173)) (<= 0 (* 2 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58)) (< (+ (* 2 (* aux_div_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103 v_main_~y~0_BEFORE_CALL_173)) v_main_~y~0_BEFORE_CALL_173) (+ (* 4 (* v_main_~y~0_BEFORE_CALL_173 aux_div_v_main_~q~0_BEFORE_CALL_125_55)) (* 2 (* v_main_~y~0_BEFORE_CALL_173 aux_div_aux_mod_aux_mod_v_main_~q~0_BEFORE_CALL_125_55_103_58)))) (<= 1 |__VERIFIER_assert_#in~cond|)))} ~cond := #in~cond; {16904#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:29:21,509 INFO L290 TraceCheckUtils]: 112: Hoare triple {16904#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16555#false} is VALID [2022-04-08 11:29:21,509 INFO L290 TraceCheckUtils]: 113: Hoare triple {16555#false} assume !false; {16555#false} is VALID [2022-04-08 11:29:21,510 INFO L134 CoverageAnalysis]: Checked inductivity of 486 backedges. 47 proven. 61 refuted. 0 times theorem prover too weak. 378 trivial. 0 not checked. [2022-04-08 11:29:21,510 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:29:38,628 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 11:30:27,428 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:30:27,428 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [503332666] [2022-04-08 11:30:27,428 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:30:27,428 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1956937742] [2022-04-08 11:30:27,428 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1956937742] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 11:30:27,428 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 11:30:27,428 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2022-04-08 11:30:27,428 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:30:27,428 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1148675433] [2022-04-08 11:30:27,428 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1148675433] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:30:27,429 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:30:27,429 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 11:30:27,429 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2099498132] [2022-04-08 11:30:27,429 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:30:27,429 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) Word has length 114 [2022-04-08 11:30:27,429 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:30:27,429 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 11:30:27,545 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:30:27,545 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 11:30:27,545 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:30:27,546 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 11:30:27,546 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=137, Invalid=513, Unknown=0, NotChecked=0, Total=650 [2022-04-08 11:30:27,546 INFO L87 Difference]: Start difference. First operand 184 states and 218 transitions. Second operand has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 11:30:35,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:30:35,343 INFO L93 Difference]: Finished difference Result 230 states and 283 transitions. [2022-04-08 11:30:35,343 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 11:30:35,343 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) Word has length 114 [2022-04-08 11:30:35,343 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:30:35,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 11:30:35,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 172 transitions. [2022-04-08 11:30:35,347 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 11:30:35,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 172 transitions. [2022-04-08 11:30:35,349 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 172 transitions. [2022-04-08 11:30:35,605 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:30:35,609 INFO L225 Difference]: With dead ends: 230 [2022-04-08 11:30:35,609 INFO L226 Difference]: Without dead ends: 217 [2022-04-08 11:30:35,609 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 207 GetRequests, 179 SyntacticMatches, 2 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 219 ImplicationChecksByTransitivity, 2.1s TimeCoverageRelationStatistics Valid=151, Invalid=605, Unknown=0, NotChecked=0, Total=756 [2022-04-08 11:30:35,609 INFO L913 BasicCegarLoop]: 64 mSDtfsCounter, 53 mSDsluCounter, 218 mSDsCounter, 0 mSdLazyCounter, 630 mSolverCounterSat, 39 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 282 SdHoareTripleChecker+Invalid, 685 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 630 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 16 IncrementalHoareTripleChecker+Unchecked, 2.7s IncrementalHoareTripleChecker+Time [2022-04-08 11:30:35,610 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [73 Valid, 282 Invalid, 685 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 630 Invalid, 0 Unknown, 16 Unchecked, 2.7s Time] [2022-04-08 11:30:35,610 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 217 states. [2022-04-08 11:30:35,904 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 217 to 206. [2022-04-08 11:30:35,905 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:30:35,905 INFO L82 GeneralOperation]: Start isEquivalent. First operand 217 states. Second operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:30:35,905 INFO L74 IsIncluded]: Start isIncluded. First operand 217 states. Second operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:30:35,906 INFO L87 Difference]: Start difference. First operand 217 states. Second operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:30:35,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:30:35,910 INFO L93 Difference]: Finished difference Result 217 states and 264 transitions. [2022-04-08 11:30:35,910 INFO L276 IsEmpty]: Start isEmpty. Operand 217 states and 264 transitions. [2022-04-08 11:30:35,910 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:30:35,910 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:30:35,910 INFO L74 IsIncluded]: Start isIncluded. First operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) Second operand 217 states. [2022-04-08 11:30:35,911 INFO L87 Difference]: Start difference. First operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) Second operand 217 states. [2022-04-08 11:30:35,914 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:30:35,914 INFO L93 Difference]: Finished difference Result 217 states and 264 transitions. [2022-04-08 11:30:35,914 INFO L276 IsEmpty]: Start isEmpty. Operand 217 states and 264 transitions. [2022-04-08 11:30:35,914 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:30:35,914 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:30:35,914 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:30:35,914 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:30:35,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 206 states, 131 states have (on average 1.1450381679389312) internal successors, (150), 132 states have internal predecessors, (150), 52 states have call successors, (52), 24 states have call predecessors, (52), 22 states have return successors, (50), 49 states have call predecessors, (50), 50 states have call successors, (50) [2022-04-08 11:30:35,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 206 states to 206 states and 252 transitions. [2022-04-08 11:30:35,918 INFO L78 Accepts]: Start accepts. Automaton has 206 states and 252 transitions. Word has length 114 [2022-04-08 11:30:35,918 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:30:35,918 INFO L478 AbstractCegarLoop]: Abstraction has 206 states and 252 transitions. [2022-04-08 11:30:35,918 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.6) internal successors, (39), 14 states have internal predecessors, (39), 8 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 11:30:35,918 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 206 states and 252 transitions. [2022-04-08 11:30:36,278 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 252 edges. 252 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:30:36,278 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 252 transitions. [2022-04-08 11:30:36,279 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2022-04-08 11:30:36,279 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:30:36,279 INFO L499 BasicCegarLoop]: trace histogram [18, 17, 17, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 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-08 11:30:36,295 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-08 11:30:36,491 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-08 11:30:36,491 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:30:36,492 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:30:36,492 INFO L85 PathProgramCache]: Analyzing trace with hash 1338024082, now seen corresponding path program 5 times [2022-04-08 11:30:36,492 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:30:36,492 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [709083883] [2022-04-08 11:31:05,831 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:31:05,832 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:31:05,832 INFO L85 PathProgramCache]: Analyzing trace with hash 1338024082, now seen corresponding path program 6 times [2022-04-08 11:31:05,832 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:31:05,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1825807377] [2022-04-08 11:31:05,832 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:31:05,832 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:31:05,842 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:31:05,842 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [227263481] [2022-04-08 11:31:05,843 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 11:31:05,843 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:31:05,843 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:31:05,843 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:31:05,844 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-08 11:31:05,910 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 9 check-sat command(s) [2022-04-08 11:31:05,910 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:31:05,911 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-08 11:31:05,929 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:31:05,930 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:31:06,582 INFO L272 TraceCheckUtils]: 0: Hoare triple {18505#true} call ULTIMATE.init(); {18505#true} is VALID [2022-04-08 11:31:06,582 INFO L290 TraceCheckUtils]: 1: Hoare triple {18505#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; {18505#true} is VALID [2022-04-08 11:31:06,582 INFO L290 TraceCheckUtils]: 2: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,582 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18505#true} {18505#true} #93#return; {18505#true} is VALID [2022-04-08 11:31:06,582 INFO L272 TraceCheckUtils]: 4: Hoare triple {18505#true} call #t~ret8 := main(); {18505#true} is VALID [2022-04-08 11:31:06,582 INFO L290 TraceCheckUtils]: 5: Hoare triple {18505#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; {18505#true} is VALID [2022-04-08 11:31:06,582 INFO L272 TraceCheckUtils]: 6: Hoare triple {18505#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:06,582 INFO L290 TraceCheckUtils]: 7: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,582 INFO L290 TraceCheckUtils]: 8: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,582 INFO L290 TraceCheckUtils]: 9: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,582 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18505#true} {18505#true} #77#return; {18505#true} is VALID [2022-04-08 11:31:06,583 INFO L290 TraceCheckUtils]: 11: Hoare triple {18505#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,583 INFO L290 TraceCheckUtils]: 12: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,584 INFO L290 TraceCheckUtils]: 13: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,584 INFO L272 TraceCheckUtils]: 14: Hoare triple {18543#(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)); {18505#true} is VALID [2022-04-08 11:31:06,584 INFO L290 TraceCheckUtils]: 15: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,584 INFO L290 TraceCheckUtils]: 16: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,584 INFO L290 TraceCheckUtils]: 17: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,584 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,584 INFO L272 TraceCheckUtils]: 19: Hoare triple {18543#(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)); {18505#true} is VALID [2022-04-08 11:31:06,585 INFO L290 TraceCheckUtils]: 20: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,585 INFO L290 TraceCheckUtils]: 21: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,585 INFO L290 TraceCheckUtils]: 22: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,585 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,585 INFO L290 TraceCheckUtils]: 24: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,586 INFO L290 TraceCheckUtils]: 25: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,586 INFO L290 TraceCheckUtils]: 26: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,586 INFO L272 TraceCheckUtils]: 27: Hoare triple {18543#(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)); {18505#true} is VALID [2022-04-08 11:31:06,586 INFO L290 TraceCheckUtils]: 28: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,586 INFO L290 TraceCheckUtils]: 29: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,586 INFO L290 TraceCheckUtils]: 30: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,587 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,587 INFO L272 TraceCheckUtils]: 32: Hoare triple {18543#(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)); {18505#true} is VALID [2022-04-08 11:31:06,587 INFO L290 TraceCheckUtils]: 33: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,587 INFO L290 TraceCheckUtils]: 34: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,587 INFO L290 TraceCheckUtils]: 35: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,588 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #85#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,588 INFO L272 TraceCheckUtils]: 37: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:06,588 INFO L290 TraceCheckUtils]: 38: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,588 INFO L290 TraceCheckUtils]: 39: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,588 INFO L290 TraceCheckUtils]: 40: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,588 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #87#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,589 INFO L290 TraceCheckUtils]: 42: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,589 INFO L272 TraceCheckUtils]: 43: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:06,589 INFO L290 TraceCheckUtils]: 44: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,589 INFO L290 TraceCheckUtils]: 45: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,589 INFO L290 TraceCheckUtils]: 46: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,590 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #89#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,590 INFO L290 TraceCheckUtils]: 48: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,590 INFO L290 TraceCheckUtils]: 49: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,591 INFO L290 TraceCheckUtils]: 50: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,591 INFO L272 TraceCheckUtils]: 51: Hoare triple {18543#(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)); {18505#true} is VALID [2022-04-08 11:31:06,591 INFO L290 TraceCheckUtils]: 52: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,591 INFO L290 TraceCheckUtils]: 53: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,591 INFO L290 TraceCheckUtils]: 54: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,591 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,591 INFO L272 TraceCheckUtils]: 56: Hoare triple {18543#(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)); {18505#true} is VALID [2022-04-08 11:31:06,592 INFO L290 TraceCheckUtils]: 57: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,592 INFO L290 TraceCheckUtils]: 58: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,592 INFO L290 TraceCheckUtils]: 59: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,592 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #85#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,592 INFO L272 TraceCheckUtils]: 61: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:06,592 INFO L290 TraceCheckUtils]: 62: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,592 INFO L290 TraceCheckUtils]: 63: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,592 INFO L290 TraceCheckUtils]: 64: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,593 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #87#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,593 INFO L290 TraceCheckUtils]: 66: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,593 INFO L272 TraceCheckUtils]: 67: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:06,593 INFO L290 TraceCheckUtils]: 68: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,593 INFO L290 TraceCheckUtils]: 69: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,593 INFO L290 TraceCheckUtils]: 70: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,594 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #89#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,594 INFO L290 TraceCheckUtils]: 72: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,595 INFO L290 TraceCheckUtils]: 73: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,595 INFO L290 TraceCheckUtils]: 74: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,595 INFO L272 TraceCheckUtils]: 75: Hoare triple {18543#(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)); {18505#true} is VALID [2022-04-08 11:31:06,595 INFO L290 TraceCheckUtils]: 76: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,595 INFO L290 TraceCheckUtils]: 77: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,595 INFO L290 TraceCheckUtils]: 78: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,596 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,596 INFO L272 TraceCheckUtils]: 80: Hoare triple {18543#(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)); {18505#true} is VALID [2022-04-08 11:31:06,596 INFO L290 TraceCheckUtils]: 81: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,596 INFO L290 TraceCheckUtils]: 82: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,596 INFO L290 TraceCheckUtils]: 83: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,596 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #85#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,597 INFO L272 TraceCheckUtils]: 85: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:06,597 INFO L290 TraceCheckUtils]: 86: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,597 INFO L290 TraceCheckUtils]: 87: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,597 INFO L290 TraceCheckUtils]: 88: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,597 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #87#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,597 INFO L290 TraceCheckUtils]: 90: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,598 INFO L272 TraceCheckUtils]: 91: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:06,598 INFO L290 TraceCheckUtils]: 92: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,598 INFO L290 TraceCheckUtils]: 93: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,598 INFO L290 TraceCheckUtils]: 94: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,598 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {18505#true} {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #89#return; {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,600 INFO L290 TraceCheckUtils]: 96: Hoare triple {18543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18799#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,600 INFO L290 TraceCheckUtils]: 97: Hoare triple {18799#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18799#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,600 INFO L290 TraceCheckUtils]: 98: Hoare triple {18799#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {18799#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:31:06,600 INFO L272 TraceCheckUtils]: 99: Hoare triple {18799#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:06,601 INFO L290 TraceCheckUtils]: 100: Hoare triple {18505#true} ~cond := #in~cond; {18812#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:31:06,601 INFO L290 TraceCheckUtils]: 101: Hoare triple {18812#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18816#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:31:06,601 INFO L290 TraceCheckUtils]: 102: Hoare triple {18816#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18816#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:31:06,602 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {18816#(not (= |__VERIFIER_assert_#in~cond| 0))} {18799#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {18823#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:31:06,602 INFO L272 TraceCheckUtils]: 104: Hoare triple {18823#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= 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)); {18505#true} is VALID [2022-04-08 11:31:06,602 INFO L290 TraceCheckUtils]: 105: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,602 INFO L290 TraceCheckUtils]: 106: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,602 INFO L290 TraceCheckUtils]: 107: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,603 INFO L284 TraceCheckUtils]: 108: Hoare quadruple {18505#true} {18823#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #85#return; {18823#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:31:06,603 INFO L272 TraceCheckUtils]: 109: Hoare triple {18823#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:06,603 INFO L290 TraceCheckUtils]: 110: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:06,603 INFO L290 TraceCheckUtils]: 111: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:06,603 INFO L290 TraceCheckUtils]: 112: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:06,604 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {18505#true} {18823#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #87#return; {18823#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:31:06,604 INFO L290 TraceCheckUtils]: 114: Hoare triple {18823#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} assume !(~r~0 >= 2 * ~b~0); {18823#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:31:06,607 INFO L290 TraceCheckUtils]: 115: Hoare triple {18823#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {18860#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:31:06,608 INFO L290 TraceCheckUtils]: 116: Hoare triple {18860#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18860#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:31:06,608 INFO L290 TraceCheckUtils]: 117: Hoare triple {18860#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} assume !(#t~post6 < 50);havoc #t~post6; {18860#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:31:06,609 INFO L272 TraceCheckUtils]: 118: Hoare triple {18860#(and (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)) (= (mod main_~q~0 2) 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {18870#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:31:06,609 INFO L290 TraceCheckUtils]: 119: Hoare triple {18870#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18874#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:31:06,609 INFO L290 TraceCheckUtils]: 120: Hoare triple {18874#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18506#false} is VALID [2022-04-08 11:31:06,609 INFO L290 TraceCheckUtils]: 121: Hoare triple {18506#false} assume !false; {18506#false} is VALID [2022-04-08 11:31:06,610 INFO L134 CoverageAnalysis]: Checked inductivity of 622 backedges. 93 proven. 9 refuted. 0 times theorem prover too weak. 520 trivial. 0 not checked. [2022-04-08 11:31:06,610 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:31:11,715 INFO L290 TraceCheckUtils]: 121: Hoare triple {18506#false} assume !false; {18506#false} is VALID [2022-04-08 11:31:11,715 INFO L290 TraceCheckUtils]: 120: Hoare triple {18874#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18506#false} is VALID [2022-04-08 11:31:11,716 INFO L290 TraceCheckUtils]: 119: Hoare triple {18870#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18874#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:31:11,716 INFO L272 TraceCheckUtils]: 118: Hoare triple {18890#(= (+ (* 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)); {18870#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:31:11,716 INFO L290 TraceCheckUtils]: 117: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !(#t~post6 < 50);havoc #t~post6; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,717 INFO L290 TraceCheckUtils]: 116: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,724 INFO L290 TraceCheckUtils]: 115: Hoare triple {18900#(= 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; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,724 INFO L290 TraceCheckUtils]: 114: Hoare triple {18900#(= 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); {18900#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:31:11,724 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {18505#true} {18900#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #87#return; {18900#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:31:11,725 INFO L290 TraceCheckUtils]: 112: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,725 INFO L290 TraceCheckUtils]: 111: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,725 INFO L290 TraceCheckUtils]: 110: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,725 INFO L272 TraceCheckUtils]: 109: Hoare triple {18900#(= 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)); {18505#true} is VALID [2022-04-08 11:31:11,738 INFO L284 TraceCheckUtils]: 108: Hoare quadruple {18505#true} {18900#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} #85#return; {18900#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:31:11,739 INFO L290 TraceCheckUtils]: 107: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,739 INFO L290 TraceCheckUtils]: 106: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,739 INFO L290 TraceCheckUtils]: 105: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,739 INFO L272 TraceCheckUtils]: 104: Hoare triple {18900#(= 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)); {18505#true} is VALID [2022-04-08 11:31:11,740 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {18816#(not (= |__VERIFIER_assert_#in~cond| 0))} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #83#return; {18900#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-08 11:31:11,740 INFO L290 TraceCheckUtils]: 102: Hoare triple {18816#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18816#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:31:11,740 INFO L290 TraceCheckUtils]: 101: Hoare triple {18946#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18816#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:31:11,740 INFO L290 TraceCheckUtils]: 100: Hoare triple {18505#true} ~cond := #in~cond; {18946#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:31:11,741 INFO L272 TraceCheckUtils]: 99: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,741 INFO L290 TraceCheckUtils]: 98: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 50);havoc #t~post7; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,741 INFO L290 TraceCheckUtils]: 97: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,741 INFO L290 TraceCheckUtils]: 96: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,742 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #89#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,742 INFO L290 TraceCheckUtils]: 94: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,742 INFO L290 TraceCheckUtils]: 93: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,742 INFO L290 TraceCheckUtils]: 92: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,742 INFO L272 TraceCheckUtils]: 91: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,742 INFO L290 TraceCheckUtils]: 90: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,743 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #87#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,743 INFO L290 TraceCheckUtils]: 88: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,743 INFO L290 TraceCheckUtils]: 87: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,743 INFO L290 TraceCheckUtils]: 86: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,743 INFO L272 TraceCheckUtils]: 85: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:11,743 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #85#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,744 INFO L290 TraceCheckUtils]: 83: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,744 INFO L290 TraceCheckUtils]: 82: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,744 INFO L290 TraceCheckUtils]: 81: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,744 INFO L272 TraceCheckUtils]: 80: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,744 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #83#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,744 INFO L290 TraceCheckUtils]: 78: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,744 INFO L290 TraceCheckUtils]: 77: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,744 INFO L290 TraceCheckUtils]: 76: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,745 INFO L272 TraceCheckUtils]: 75: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,745 INFO L290 TraceCheckUtils]: 74: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 50);havoc #t~post7; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,745 INFO L290 TraceCheckUtils]: 73: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,745 INFO L290 TraceCheckUtils]: 72: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,746 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #89#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,746 INFO L290 TraceCheckUtils]: 70: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,746 INFO L290 TraceCheckUtils]: 69: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,746 INFO L290 TraceCheckUtils]: 68: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,746 INFO L272 TraceCheckUtils]: 67: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,746 INFO L290 TraceCheckUtils]: 66: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,747 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #87#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,747 INFO L290 TraceCheckUtils]: 64: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,747 INFO L290 TraceCheckUtils]: 63: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,747 INFO L290 TraceCheckUtils]: 62: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,747 INFO L272 TraceCheckUtils]: 61: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:11,747 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #85#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,747 INFO L290 TraceCheckUtils]: 59: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,748 INFO L290 TraceCheckUtils]: 58: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,748 INFO L290 TraceCheckUtils]: 57: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,748 INFO L272 TraceCheckUtils]: 56: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,748 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #83#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,748 INFO L290 TraceCheckUtils]: 54: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,748 INFO L290 TraceCheckUtils]: 53: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,748 INFO L290 TraceCheckUtils]: 52: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,748 INFO L272 TraceCheckUtils]: 51: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,749 INFO L290 TraceCheckUtils]: 50: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 50);havoc #t~post7; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,749 INFO L290 TraceCheckUtils]: 49: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,749 INFO L290 TraceCheckUtils]: 48: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,750 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #89#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,750 INFO L290 TraceCheckUtils]: 46: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,750 INFO L290 TraceCheckUtils]: 45: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,750 INFO L290 TraceCheckUtils]: 44: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,750 INFO L272 TraceCheckUtils]: 43: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,750 INFO L290 TraceCheckUtils]: 42: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= 2 * ~b~0); {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,751 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #87#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,751 INFO L290 TraceCheckUtils]: 40: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,751 INFO L290 TraceCheckUtils]: 39: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,751 INFO L290 TraceCheckUtils]: 38: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,751 INFO L272 TraceCheckUtils]: 37: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:11,751 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #85#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,751 INFO L290 TraceCheckUtils]: 35: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,751 INFO L290 TraceCheckUtils]: 34: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,752 INFO L290 TraceCheckUtils]: 33: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,752 INFO L272 TraceCheckUtils]: 32: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,752 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #83#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,752 INFO L290 TraceCheckUtils]: 30: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,752 INFO L290 TraceCheckUtils]: 29: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,752 INFO L290 TraceCheckUtils]: 28: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,752 INFO L272 TraceCheckUtils]: 27: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,753 INFO L290 TraceCheckUtils]: 26: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post7 < 50);havoc #t~post7; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,753 INFO L290 TraceCheckUtils]: 25: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,753 INFO L290 TraceCheckUtils]: 24: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,754 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #81#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,754 INFO L290 TraceCheckUtils]: 22: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,754 INFO L290 TraceCheckUtils]: 21: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,754 INFO L290 TraceCheckUtils]: 20: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,754 INFO L272 TraceCheckUtils]: 19: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,754 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {18505#true} {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #79#return; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,754 INFO L290 TraceCheckUtils]: 17: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,754 INFO L290 TraceCheckUtils]: 16: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,755 INFO L290 TraceCheckUtils]: 15: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,755 INFO L272 TraceCheckUtils]: 14: Hoare triple {18890#(= (+ (* 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)); {18505#true} is VALID [2022-04-08 11:31:11,755 INFO L290 TraceCheckUtils]: 13: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} assume !!(#t~post6 < 50);havoc #t~post6; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,755 INFO L290 TraceCheckUtils]: 12: Hoare triple {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,755 INFO L290 TraceCheckUtils]: 11: Hoare triple {18505#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {18890#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:31:11,755 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18505#true} {18505#true} #77#return; {18505#true} is VALID [2022-04-08 11:31:11,756 INFO L290 TraceCheckUtils]: 9: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,756 INFO L290 TraceCheckUtils]: 8: Hoare triple {18505#true} assume !(0 == ~cond); {18505#true} is VALID [2022-04-08 11:31:11,756 INFO L290 TraceCheckUtils]: 7: Hoare triple {18505#true} ~cond := #in~cond; {18505#true} is VALID [2022-04-08 11:31:11,756 INFO L272 TraceCheckUtils]: 6: Hoare triple {18505#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18505#true} is VALID [2022-04-08 11:31:11,756 INFO L290 TraceCheckUtils]: 5: Hoare triple {18505#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; {18505#true} is VALID [2022-04-08 11:31:11,756 INFO L272 TraceCheckUtils]: 4: Hoare triple {18505#true} call #t~ret8 := main(); {18505#true} is VALID [2022-04-08 11:31:11,756 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18505#true} {18505#true} #93#return; {18505#true} is VALID [2022-04-08 11:31:11,756 INFO L290 TraceCheckUtils]: 2: Hoare triple {18505#true} assume true; {18505#true} is VALID [2022-04-08 11:31:11,756 INFO L290 TraceCheckUtils]: 1: Hoare triple {18505#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; {18505#true} is VALID [2022-04-08 11:31:11,756 INFO L272 TraceCheckUtils]: 0: Hoare triple {18505#true} call ULTIMATE.init(); {18505#true} is VALID [2022-04-08 11:31:11,757 INFO L134 CoverageAnalysis]: Checked inductivity of 622 backedges. 75 proven. 16 refuted. 0 times theorem prover too weak. 531 trivial. 0 not checked. [2022-04-08 11:31:11,757 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:31:11,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1825807377] [2022-04-08 11:31:11,757 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:31:11,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [227263481] [2022-04-08 11:31:11,757 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [227263481] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:31:11,757 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:31:11,757 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 8] total 13 [2022-04-08 11:31:11,757 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:31:11,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [709083883] [2022-04-08 11:31:11,757 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [709083883] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:31:11,757 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:31:11,758 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 11:31:11,758 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [541647632] [2022-04-08 11:31:11,758 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:31:11,758 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 122 [2022-04-08 11:31:11,758 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:31:11,758 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 11:31:11,799 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:11,799 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 11:31:11,799 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:31:11,799 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 11:31:11,799 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=118, Unknown=0, NotChecked=0, Total=156 [2022-04-08 11:31:11,800 INFO L87 Difference]: Start difference. First operand 206 states and 252 transitions. Second operand has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 11:31:13,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:13,069 INFO L93 Difference]: Finished difference Result 240 states and 299 transitions. [2022-04-08 11:31:13,069 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 11:31:13,069 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 122 [2022-04-08 11:31:13,070 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:31:13,070 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 11:31:13,071 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 110 transitions. [2022-04-08 11:31:13,072 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 11:31:13,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 110 transitions. [2022-04-08 11:31:13,074 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 110 transitions. [2022-04-08 11:31:13,182 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:13,186 INFO L225 Difference]: With dead ends: 240 [2022-04-08 11:31:13,186 INFO L226 Difference]: Without dead ends: 237 [2022-04-08 11:31:13,186 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 245 GetRequests, 230 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 44 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=51, Invalid=159, Unknown=0, NotChecked=0, Total=210 [2022-04-08 11:31:13,187 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 39 mSDsluCounter, 131 mSDsCounter, 0 mSdLazyCounter, 250 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 49 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 279 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 250 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-08 11:31:13,187 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [49 Valid, 169 Invalid, 279 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 250 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-08 11:31:13,187 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 237 states. [2022-04-08 11:31:13,498 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 237 to 234. [2022-04-08 11:31:13,498 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:31:13,499 INFO L82 GeneralOperation]: Start isEquivalent. First operand 237 states. Second operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 11:31:13,499 INFO L74 IsIncluded]: Start isIncluded. First operand 237 states. Second operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 11:31:13,499 INFO L87 Difference]: Start difference. First operand 237 states. Second operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 11:31:13,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:13,503 INFO L93 Difference]: Finished difference Result 237 states and 294 transitions. [2022-04-08 11:31:13,503 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 294 transitions. [2022-04-08 11:31:13,504 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:31:13,504 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:31:13,504 INFO L74 IsIncluded]: Start isIncluded. First operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) Second operand 237 states. [2022-04-08 11:31:13,504 INFO L87 Difference]: Start difference. First operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) Second operand 237 states. [2022-04-08 11:31:13,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:13,508 INFO L93 Difference]: Finished difference Result 237 states and 294 transitions. [2022-04-08 11:31:13,508 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 294 transitions. [2022-04-08 11:31:13,508 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:31:13,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:31:13,508 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:31:13,508 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:31:13,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 234 states, 148 states have (on average 1.1554054054054055) internal successors, (171), 149 states have internal predecessors, (171), 61 states have call successors, (61), 26 states have call predecessors, (61), 24 states have return successors, (59), 58 states have call predecessors, (59), 59 states have call successors, (59) [2022-04-08 11:31:13,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 234 states to 234 states and 291 transitions. [2022-04-08 11:31:13,513 INFO L78 Accepts]: Start accepts. Automaton has 234 states and 291 transitions. Word has length 122 [2022-04-08 11:31:13,513 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:31:13,513 INFO L478 AbstractCegarLoop]: Abstraction has 234 states and 291 transitions. [2022-04-08 11:31:13,513 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.0) internal successors, (30), 9 states have internal predecessors, (30), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-08 11:31:13,513 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 234 states and 291 transitions. [2022-04-08 11:31:13,897 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 291 edges. 291 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:13,897 INFO L276 IsEmpty]: Start isEmpty. Operand 234 states and 291 transitions. [2022-04-08 11:31:13,898 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 131 [2022-04-08 11:31:13,898 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:31:13,898 INFO L499 BasicCegarLoop]: trace histogram [18, 17, 17, 5, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:31:13,915 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-08 11:31:14,114 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:31:14,115 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:31:14,115 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:31:14,115 INFO L85 PathProgramCache]: Analyzing trace with hash -877539457, now seen corresponding path program 5 times [2022-04-08 11:31:14,115 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:31:14,115 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [199278070] [2022-04-08 11:31:51,831 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:31:51,831 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:31:51,831 INFO L85 PathProgramCache]: Analyzing trace with hash -877539457, now seen corresponding path program 6 times [2022-04-08 11:31:51,831 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:31:51,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [728938656] [2022-04-08 11:31:51,832 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:31:51,832 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:31:51,848 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:31:51,848 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1892464976] [2022-04-08 11:31:51,848 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 11:31:51,848 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:31:51,849 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:31:51,849 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:31:51,861 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-08 11:31:51,899 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 11:31:51,899 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:31:51,900 INFO L263 TraceCheckSpWp]: Trace formula consists of 169 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 11:31:51,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:31:51,915 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:31:52,160 INFO L272 TraceCheckUtils]: 0: Hoare triple {20675#true} call ULTIMATE.init(); {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L290 TraceCheckUtils]: 1: Hoare triple {20675#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; {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L290 TraceCheckUtils]: 2: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20675#true} {20675#true} #93#return; {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L272 TraceCheckUtils]: 4: Hoare triple {20675#true} call #t~ret8 := main(); {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L290 TraceCheckUtils]: 5: Hoare triple {20675#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; {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L272 TraceCheckUtils]: 6: Hoare triple {20675#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L290 TraceCheckUtils]: 7: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L290 TraceCheckUtils]: 8: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L290 TraceCheckUtils]: 9: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20675#true} {20675#true} #77#return; {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L290 TraceCheckUtils]: 11: Hoare triple {20675#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L290 TraceCheckUtils]: 12: Hoare triple {20675#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L290 TraceCheckUtils]: 13: Hoare triple {20675#true} assume !!(#t~post6 < 50);havoc #t~post6; {20675#true} is VALID [2022-04-08 11:31:52,161 INFO L272 TraceCheckUtils]: 14: Hoare triple {20675#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L290 TraceCheckUtils]: 15: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L290 TraceCheckUtils]: 16: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L290 TraceCheckUtils]: 17: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {20675#true} {20675#true} #79#return; {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L272 TraceCheckUtils]: 19: Hoare triple {20675#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L290 TraceCheckUtils]: 20: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L290 TraceCheckUtils]: 21: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L290 TraceCheckUtils]: 22: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {20675#true} {20675#true} #81#return; {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L290 TraceCheckUtils]: 24: Hoare triple {20675#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L290 TraceCheckUtils]: 25: Hoare triple {20675#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L290 TraceCheckUtils]: 26: Hoare triple {20675#true} assume !!(#t~post7 < 50);havoc #t~post7; {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L272 TraceCheckUtils]: 27: Hoare triple {20675#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,162 INFO L290 TraceCheckUtils]: 28: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L290 TraceCheckUtils]: 29: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L290 TraceCheckUtils]: 30: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {20675#true} {20675#true} #83#return; {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L272 TraceCheckUtils]: 32: Hoare triple {20675#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L290 TraceCheckUtils]: 33: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L290 TraceCheckUtils]: 34: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L290 TraceCheckUtils]: 35: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {20675#true} {20675#true} #85#return; {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L272 TraceCheckUtils]: 37: Hoare triple {20675#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L290 TraceCheckUtils]: 38: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L290 TraceCheckUtils]: 39: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L290 TraceCheckUtils]: 40: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {20675#true} {20675#true} #87#return; {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L290 TraceCheckUtils]: 42: Hoare triple {20675#true} assume !!(~r~0 >= 2 * ~b~0); {20675#true} is VALID [2022-04-08 11:31:52,163 INFO L272 TraceCheckUtils]: 43: Hoare triple {20675#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L290 TraceCheckUtils]: 44: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L290 TraceCheckUtils]: 45: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L290 TraceCheckUtils]: 46: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20675#true} {20675#true} #89#return; {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L290 TraceCheckUtils]: 48: Hoare triple {20675#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L290 TraceCheckUtils]: 49: Hoare triple {20675#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L290 TraceCheckUtils]: 50: Hoare triple {20675#true} assume !!(#t~post7 < 50);havoc #t~post7; {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L272 TraceCheckUtils]: 51: Hoare triple {20675#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L290 TraceCheckUtils]: 52: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L290 TraceCheckUtils]: 53: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L290 TraceCheckUtils]: 54: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {20675#true} {20675#true} #83#return; {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L272 TraceCheckUtils]: 56: Hoare triple {20675#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L290 TraceCheckUtils]: 57: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,164 INFO L290 TraceCheckUtils]: 58: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L290 TraceCheckUtils]: 59: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {20675#true} {20675#true} #85#return; {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L272 TraceCheckUtils]: 61: Hoare triple {20675#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L290 TraceCheckUtils]: 62: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L290 TraceCheckUtils]: 63: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L290 TraceCheckUtils]: 64: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {20675#true} {20675#true} #87#return; {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L290 TraceCheckUtils]: 66: Hoare triple {20675#true} assume !!(~r~0 >= 2 * ~b~0); {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L272 TraceCheckUtils]: 67: Hoare triple {20675#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L290 TraceCheckUtils]: 68: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L290 TraceCheckUtils]: 69: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L290 TraceCheckUtils]: 70: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {20675#true} {20675#true} #89#return; {20675#true} is VALID [2022-04-08 11:31:52,165 INFO L290 TraceCheckUtils]: 72: Hoare triple {20675#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L290 TraceCheckUtils]: 73: Hoare triple {20675#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L290 TraceCheckUtils]: 74: Hoare triple {20675#true} assume !!(#t~post7 < 50);havoc #t~post7; {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L272 TraceCheckUtils]: 75: Hoare triple {20675#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L290 TraceCheckUtils]: 76: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L290 TraceCheckUtils]: 77: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L290 TraceCheckUtils]: 78: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {20675#true} {20675#true} #83#return; {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L272 TraceCheckUtils]: 80: Hoare triple {20675#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L290 TraceCheckUtils]: 81: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L290 TraceCheckUtils]: 82: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L290 TraceCheckUtils]: 83: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {20675#true} {20675#true} #85#return; {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L272 TraceCheckUtils]: 85: Hoare triple {20675#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L290 TraceCheckUtils]: 86: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,166 INFO L290 TraceCheckUtils]: 87: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L290 TraceCheckUtils]: 88: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {20675#true} {20675#true} #87#return; {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L290 TraceCheckUtils]: 90: Hoare triple {20675#true} assume !(~r~0 >= 2 * ~b~0); {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L290 TraceCheckUtils]: 91: Hoare triple {20675#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L290 TraceCheckUtils]: 92: Hoare triple {20675#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L290 TraceCheckUtils]: 93: Hoare triple {20675#true} assume !!(#t~post6 < 50);havoc #t~post6; {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L272 TraceCheckUtils]: 94: Hoare triple {20675#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L290 TraceCheckUtils]: 95: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L290 TraceCheckUtils]: 96: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L290 TraceCheckUtils]: 97: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {20675#true} {20675#true} #79#return; {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L272 TraceCheckUtils]: 99: Hoare triple {20675#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L290 TraceCheckUtils]: 100: Hoare triple {20675#true} ~cond := #in~cond; {20675#true} is VALID [2022-04-08 11:31:52,167 INFO L290 TraceCheckUtils]: 101: Hoare triple {20675#true} assume !(0 == ~cond); {20675#true} is VALID [2022-04-08 11:31:52,168 INFO L290 TraceCheckUtils]: 102: Hoare triple {20675#true} assume true; {20675#true} is VALID [2022-04-08 11:31:52,168 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {20675#true} {20675#true} #81#return; {20675#true} is VALID [2022-04-08 11:31:52,168 INFO L290 TraceCheckUtils]: 104: Hoare triple {20675#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {20675#true} is VALID [2022-04-08 11:31:52,168 INFO L290 TraceCheckUtils]: 105: Hoare triple {20675#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20995#(<= (+ |main_#t~post7| 1) ~counter~0)} is VALID [2022-04-08 11:31:52,169 INFO L290 TraceCheckUtils]: 106: Hoare triple {20995#(<= (+ |main_#t~post7| 1) ~counter~0)} assume !(#t~post7 < 50);havoc #t~post7; {20999#(<= 51 ~counter~0)} is VALID [2022-04-08 11:31:52,169 INFO L290 TraceCheckUtils]: 107: Hoare triple {20999#(<= 51 ~counter~0)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {20999#(<= 51 ~counter~0)} is VALID [2022-04-08 11:31:52,169 INFO L290 TraceCheckUtils]: 108: Hoare triple {20999#(<= 51 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21006#(<= 51 |main_#t~post6|)} is VALID [2022-04-08 11:31:52,169 INFO L290 TraceCheckUtils]: 109: Hoare triple {21006#(<= 51 |main_#t~post6|)} assume !!(#t~post6 < 50);havoc #t~post6; {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L272 TraceCheckUtils]: 110: Hoare triple {20676#false} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L290 TraceCheckUtils]: 111: Hoare triple {20676#false} ~cond := #in~cond; {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L290 TraceCheckUtils]: 112: Hoare triple {20676#false} assume !(0 == ~cond); {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L290 TraceCheckUtils]: 113: Hoare triple {20676#false} assume true; {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {20676#false} {20676#false} #79#return; {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L272 TraceCheckUtils]: 115: Hoare triple {20676#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L290 TraceCheckUtils]: 116: Hoare triple {20676#false} ~cond := #in~cond; {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L290 TraceCheckUtils]: 117: Hoare triple {20676#false} assume !(0 == ~cond); {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L290 TraceCheckUtils]: 118: Hoare triple {20676#false} assume true; {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {20676#false} {20676#false} #81#return; {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L290 TraceCheckUtils]: 120: Hoare triple {20676#false} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L290 TraceCheckUtils]: 121: Hoare triple {20676#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L290 TraceCheckUtils]: 122: Hoare triple {20676#false} assume !(#t~post7 < 50);havoc #t~post7; {20676#false} is VALID [2022-04-08 11:31:52,170 INFO L290 TraceCheckUtils]: 123: Hoare triple {20676#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {20676#false} is VALID [2022-04-08 11:31:52,171 INFO L290 TraceCheckUtils]: 124: Hoare triple {20676#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20676#false} is VALID [2022-04-08 11:31:52,171 INFO L290 TraceCheckUtils]: 125: Hoare triple {20676#false} assume !(#t~post6 < 50);havoc #t~post6; {20676#false} is VALID [2022-04-08 11:31:52,171 INFO L272 TraceCheckUtils]: 126: Hoare triple {20676#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {20676#false} is VALID [2022-04-08 11:31:52,171 INFO L290 TraceCheckUtils]: 127: Hoare triple {20676#false} ~cond := #in~cond; {20676#false} is VALID [2022-04-08 11:31:52,171 INFO L290 TraceCheckUtils]: 128: Hoare triple {20676#false} assume 0 == ~cond; {20676#false} is VALID [2022-04-08 11:31:52,171 INFO L290 TraceCheckUtils]: 129: Hoare triple {20676#false} assume !false; {20676#false} is VALID [2022-04-08 11:31:52,172 INFO L134 CoverageAnalysis]: Checked inductivity of 636 backedges. 180 proven. 0 refuted. 0 times theorem prover too weak. 456 trivial. 0 not checked. [2022-04-08 11:31:52,172 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 11:31:52,172 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:31:52,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [728938656] [2022-04-08 11:31:52,172 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:31:52,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1892464976] [2022-04-08 11:31:52,172 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1892464976] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:31:52,172 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:31:52,172 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:31:52,172 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:31:52,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [199278070] [2022-04-08 11:31:52,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [199278070] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:31:52,173 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:31:52,173 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 11:31:52,173 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1046533170] [2022-04-08 11:31:52,173 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:31:52,173 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 130 [2022-04-08 11:31:52,173 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:31:52,173 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 11:31:52,208 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:52,208 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 11:31:52,208 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:31:52,208 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 11:31:52,208 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 11:31:52,208 INFO L87 Difference]: Start difference. First operand 234 states and 291 transitions. Second operand has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 11:31:52,650 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:52,650 INFO L93 Difference]: Finished difference Result 316 states and 400 transitions. [2022-04-08 11:31:52,650 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 11:31:52,650 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 130 [2022-04-08 11:31:52,650 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:31:52,650 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 11:31:52,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-08 11:31:52,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 11:31:52,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-08 11:31:52,652 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 82 transitions. [2022-04-08 11:31:52,709 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:52,713 INFO L225 Difference]: With dead ends: 316 [2022-04-08 11:31:52,713 INFO L226 Difference]: Without dead ends: 219 [2022-04-08 11:31:52,713 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 130 GetRequests, 126 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-08 11:31:52,714 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 6 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 20 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 20 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 11:31:52,714 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 160 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 20 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 11:31:52,715 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 219 states. [2022-04-08 11:31:53,010 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 219 to 211. [2022-04-08 11:31:53,010 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:31:53,010 INFO L82 GeneralOperation]: Start isEquivalent. First operand 219 states. Second operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 11:31:53,011 INFO L74 IsIncluded]: Start isIncluded. First operand 219 states. Second operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 11:31:53,011 INFO L87 Difference]: Start difference. First operand 219 states. Second operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 11:31:53,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:53,014 INFO L93 Difference]: Finished difference Result 219 states and 258 transitions. [2022-04-08 11:31:53,014 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 258 transitions. [2022-04-08 11:31:53,015 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:31:53,015 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:31:53,015 INFO L74 IsIncluded]: Start isIncluded. First operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) Second operand 219 states. [2022-04-08 11:31:53,015 INFO L87 Difference]: Start difference. First operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) Second operand 219 states. [2022-04-08 11:31:53,018 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:31:53,018 INFO L93 Difference]: Finished difference Result 219 states and 258 transitions. [2022-04-08 11:31:53,019 INFO L276 IsEmpty]: Start isEmpty. Operand 219 states and 258 transitions. [2022-04-08 11:31:53,019 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:31:53,019 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:31:53,019 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:31:53,019 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:31:53,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 211 states, 134 states have (on average 1.1194029850746268) internal successors, (150), 136 states have internal predecessors, (150), 52 states have call successors, (52), 26 states have call predecessors, (52), 24 states have return successors, (49), 48 states have call predecessors, (49), 49 states have call successors, (49) [2022-04-08 11:31:53,023 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 211 states to 211 states and 251 transitions. [2022-04-08 11:31:53,023 INFO L78 Accepts]: Start accepts. Automaton has 211 states and 251 transitions. Word has length 130 [2022-04-08 11:31:53,023 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:31:53,023 INFO L478 AbstractCegarLoop]: Abstraction has 211 states and 251 transitions. [2022-04-08 11:31:53,023 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 7.0) internal successors, (35), 5 states have internal predecessors, (35), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-08 11:31:53,023 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 211 states and 251 transitions. [2022-04-08 11:31:53,348 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 251 edges. 251 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:31:53,348 INFO L276 IsEmpty]: Start isEmpty. Operand 211 states and 251 transitions. [2022-04-08 11:31:53,349 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 139 [2022-04-08 11:31:53,349 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:31:53,349 INFO L499 BasicCegarLoop]: trace histogram [20, 19, 19, 5, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 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] [2022-04-08 11:31:53,364 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Ended with exit code 0 [2022-04-08 11:31:53,564 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:31:53,564 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:31:53,565 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:31:53,565 INFO L85 PathProgramCache]: Analyzing trace with hash 518951120, now seen corresponding path program 7 times [2022-04-08 11:31:53,565 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:31:53,565 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1728809629] [2022-04-08 11:32:30,875 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:32:30,875 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:32:30,875 INFO L85 PathProgramCache]: Analyzing trace with hash 518951120, now seen corresponding path program 8 times [2022-04-08 11:32:30,875 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:32:30,875 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1449229796] [2022-04-08 11:32:30,875 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:32:30,876 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:32:30,887 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:32:30,887 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2019691819] [2022-04-08 11:32:30,887 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:32:30,887 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:32:30,887 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:32:30,888 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:32:30,888 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-08 11:32:30,953 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:32:30,953 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:32:30,954 INFO L263 TraceCheckSpWp]: Trace formula consists of 326 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 11:32:30,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:32:30,984 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:32:31,491 INFO L272 TraceCheckUtils]: 0: Hoare triple {22563#true} call ULTIMATE.init(); {22563#true} is VALID [2022-04-08 11:32:31,491 INFO L290 TraceCheckUtils]: 1: Hoare triple {22563#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; {22571#(<= ~counter~0 0)} is VALID [2022-04-08 11:32:31,492 INFO L290 TraceCheckUtils]: 2: Hoare triple {22571#(<= ~counter~0 0)} assume true; {22571#(<= ~counter~0 0)} is VALID [2022-04-08 11:32:31,492 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22571#(<= ~counter~0 0)} {22563#true} #93#return; {22571#(<= ~counter~0 0)} is VALID [2022-04-08 11:32:31,492 INFO L272 TraceCheckUtils]: 4: Hoare triple {22571#(<= ~counter~0 0)} call #t~ret8 := main(); {22571#(<= ~counter~0 0)} is VALID [2022-04-08 11:32:31,493 INFO L290 TraceCheckUtils]: 5: Hoare triple {22571#(<= ~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; {22571#(<= ~counter~0 0)} is VALID [2022-04-08 11:32:31,493 INFO L272 TraceCheckUtils]: 6: Hoare triple {22571#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22571#(<= ~counter~0 0)} is VALID [2022-04-08 11:32:31,493 INFO L290 TraceCheckUtils]: 7: Hoare triple {22571#(<= ~counter~0 0)} ~cond := #in~cond; {22571#(<= ~counter~0 0)} is VALID [2022-04-08 11:32:31,494 INFO L290 TraceCheckUtils]: 8: Hoare triple {22571#(<= ~counter~0 0)} assume !(0 == ~cond); {22571#(<= ~counter~0 0)} is VALID [2022-04-08 11:32:31,494 INFO L290 TraceCheckUtils]: 9: Hoare triple {22571#(<= ~counter~0 0)} assume true; {22571#(<= ~counter~0 0)} is VALID [2022-04-08 11:32:31,494 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22571#(<= ~counter~0 0)} {22571#(<= ~counter~0 0)} #77#return; {22571#(<= ~counter~0 0)} is VALID [2022-04-08 11:32:31,494 INFO L290 TraceCheckUtils]: 11: Hoare triple {22571#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {22571#(<= ~counter~0 0)} is VALID [2022-04-08 11:32:31,495 INFO L290 TraceCheckUtils]: 12: Hoare triple {22571#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,495 INFO L290 TraceCheckUtils]: 13: Hoare triple {22605#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,496 INFO L272 TraceCheckUtils]: 14: Hoare triple {22605#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,496 INFO L290 TraceCheckUtils]: 15: Hoare triple {22605#(<= ~counter~0 1)} ~cond := #in~cond; {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,496 INFO L290 TraceCheckUtils]: 16: Hoare triple {22605#(<= ~counter~0 1)} assume !(0 == ~cond); {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,497 INFO L290 TraceCheckUtils]: 17: Hoare triple {22605#(<= ~counter~0 1)} assume true; {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,497 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {22605#(<= ~counter~0 1)} {22605#(<= ~counter~0 1)} #79#return; {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,498 INFO L272 TraceCheckUtils]: 19: Hoare triple {22605#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,498 INFO L290 TraceCheckUtils]: 20: Hoare triple {22605#(<= ~counter~0 1)} ~cond := #in~cond; {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,498 INFO L290 TraceCheckUtils]: 21: Hoare triple {22605#(<= ~counter~0 1)} assume !(0 == ~cond); {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,498 INFO L290 TraceCheckUtils]: 22: Hoare triple {22605#(<= ~counter~0 1)} assume true; {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,499 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {22605#(<= ~counter~0 1)} {22605#(<= ~counter~0 1)} #81#return; {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,499 INFO L290 TraceCheckUtils]: 24: Hoare triple {22605#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {22605#(<= ~counter~0 1)} is VALID [2022-04-08 11:32:31,499 INFO L290 TraceCheckUtils]: 25: Hoare triple {22605#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,500 INFO L290 TraceCheckUtils]: 26: Hoare triple {22645#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,500 INFO L272 TraceCheckUtils]: 27: Hoare triple {22645#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,500 INFO L290 TraceCheckUtils]: 28: Hoare triple {22645#(<= ~counter~0 2)} ~cond := #in~cond; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,501 INFO L290 TraceCheckUtils]: 29: Hoare triple {22645#(<= ~counter~0 2)} assume !(0 == ~cond); {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,501 INFO L290 TraceCheckUtils]: 30: Hoare triple {22645#(<= ~counter~0 2)} assume true; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,501 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {22645#(<= ~counter~0 2)} {22645#(<= ~counter~0 2)} #83#return; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,502 INFO L272 TraceCheckUtils]: 32: Hoare triple {22645#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,502 INFO L290 TraceCheckUtils]: 33: Hoare triple {22645#(<= ~counter~0 2)} ~cond := #in~cond; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,502 INFO L290 TraceCheckUtils]: 34: Hoare triple {22645#(<= ~counter~0 2)} assume !(0 == ~cond); {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,502 INFO L290 TraceCheckUtils]: 35: Hoare triple {22645#(<= ~counter~0 2)} assume true; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,503 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22645#(<= ~counter~0 2)} {22645#(<= ~counter~0 2)} #85#return; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,503 INFO L272 TraceCheckUtils]: 37: Hoare triple {22645#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,504 INFO L290 TraceCheckUtils]: 38: Hoare triple {22645#(<= ~counter~0 2)} ~cond := #in~cond; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,504 INFO L290 TraceCheckUtils]: 39: Hoare triple {22645#(<= ~counter~0 2)} assume !(0 == ~cond); {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,504 INFO L290 TraceCheckUtils]: 40: Hoare triple {22645#(<= ~counter~0 2)} assume true; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,504 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22645#(<= ~counter~0 2)} {22645#(<= ~counter~0 2)} #87#return; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,505 INFO L290 TraceCheckUtils]: 42: Hoare triple {22645#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,505 INFO L272 TraceCheckUtils]: 43: Hoare triple {22645#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,505 INFO L290 TraceCheckUtils]: 44: Hoare triple {22645#(<= ~counter~0 2)} ~cond := #in~cond; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,506 INFO L290 TraceCheckUtils]: 45: Hoare triple {22645#(<= ~counter~0 2)} assume !(0 == ~cond); {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,506 INFO L290 TraceCheckUtils]: 46: Hoare triple {22645#(<= ~counter~0 2)} assume true; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,506 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {22645#(<= ~counter~0 2)} {22645#(<= ~counter~0 2)} #89#return; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,507 INFO L290 TraceCheckUtils]: 48: Hoare triple {22645#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {22645#(<= ~counter~0 2)} is VALID [2022-04-08 11:32:31,507 INFO L290 TraceCheckUtils]: 49: Hoare triple {22645#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,507 INFO L290 TraceCheckUtils]: 50: Hoare triple {22718#(<= ~counter~0 3)} assume !!(#t~post7 < 50);havoc #t~post7; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,508 INFO L272 TraceCheckUtils]: 51: Hoare triple {22718#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,508 INFO L290 TraceCheckUtils]: 52: Hoare triple {22718#(<= ~counter~0 3)} ~cond := #in~cond; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,508 INFO L290 TraceCheckUtils]: 53: Hoare triple {22718#(<= ~counter~0 3)} assume !(0 == ~cond); {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,509 INFO L290 TraceCheckUtils]: 54: Hoare triple {22718#(<= ~counter~0 3)} assume true; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,509 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {22718#(<= ~counter~0 3)} {22718#(<= ~counter~0 3)} #83#return; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,510 INFO L272 TraceCheckUtils]: 56: Hoare triple {22718#(<= ~counter~0 3)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,510 INFO L290 TraceCheckUtils]: 57: Hoare triple {22718#(<= ~counter~0 3)} ~cond := #in~cond; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,510 INFO L290 TraceCheckUtils]: 58: Hoare triple {22718#(<= ~counter~0 3)} assume !(0 == ~cond); {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,510 INFO L290 TraceCheckUtils]: 59: Hoare triple {22718#(<= ~counter~0 3)} assume true; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,511 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {22718#(<= ~counter~0 3)} {22718#(<= ~counter~0 3)} #85#return; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,511 INFO L272 TraceCheckUtils]: 61: Hoare triple {22718#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,511 INFO L290 TraceCheckUtils]: 62: Hoare triple {22718#(<= ~counter~0 3)} ~cond := #in~cond; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,512 INFO L290 TraceCheckUtils]: 63: Hoare triple {22718#(<= ~counter~0 3)} assume !(0 == ~cond); {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,512 INFO L290 TraceCheckUtils]: 64: Hoare triple {22718#(<= ~counter~0 3)} assume true; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,512 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {22718#(<= ~counter~0 3)} {22718#(<= ~counter~0 3)} #87#return; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,512 INFO L290 TraceCheckUtils]: 66: Hoare triple {22718#(<= ~counter~0 3)} assume !!(~r~0 >= 2 * ~b~0); {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,513 INFO L272 TraceCheckUtils]: 67: Hoare triple {22718#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,513 INFO L290 TraceCheckUtils]: 68: Hoare triple {22718#(<= ~counter~0 3)} ~cond := #in~cond; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,513 INFO L290 TraceCheckUtils]: 69: Hoare triple {22718#(<= ~counter~0 3)} assume !(0 == ~cond); {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,514 INFO L290 TraceCheckUtils]: 70: Hoare triple {22718#(<= ~counter~0 3)} assume true; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,514 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {22718#(<= ~counter~0 3)} {22718#(<= ~counter~0 3)} #89#return; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,514 INFO L290 TraceCheckUtils]: 72: Hoare triple {22718#(<= ~counter~0 3)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {22718#(<= ~counter~0 3)} is VALID [2022-04-08 11:32:31,515 INFO L290 TraceCheckUtils]: 73: Hoare triple {22718#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,515 INFO L290 TraceCheckUtils]: 74: Hoare triple {22791#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,516 INFO L272 TraceCheckUtils]: 75: Hoare triple {22791#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,516 INFO L290 TraceCheckUtils]: 76: Hoare triple {22791#(<= ~counter~0 4)} ~cond := #in~cond; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,516 INFO L290 TraceCheckUtils]: 77: Hoare triple {22791#(<= ~counter~0 4)} assume !(0 == ~cond); {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,516 INFO L290 TraceCheckUtils]: 78: Hoare triple {22791#(<= ~counter~0 4)} assume true; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,517 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {22791#(<= ~counter~0 4)} {22791#(<= ~counter~0 4)} #83#return; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,517 INFO L272 TraceCheckUtils]: 80: Hoare triple {22791#(<= ~counter~0 4)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,517 INFO L290 TraceCheckUtils]: 81: Hoare triple {22791#(<= ~counter~0 4)} ~cond := #in~cond; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,518 INFO L290 TraceCheckUtils]: 82: Hoare triple {22791#(<= ~counter~0 4)} assume !(0 == ~cond); {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,518 INFO L290 TraceCheckUtils]: 83: Hoare triple {22791#(<= ~counter~0 4)} assume true; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,518 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {22791#(<= ~counter~0 4)} {22791#(<= ~counter~0 4)} #85#return; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,519 INFO L272 TraceCheckUtils]: 85: Hoare triple {22791#(<= ~counter~0 4)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,519 INFO L290 TraceCheckUtils]: 86: Hoare triple {22791#(<= ~counter~0 4)} ~cond := #in~cond; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,519 INFO L290 TraceCheckUtils]: 87: Hoare triple {22791#(<= ~counter~0 4)} assume !(0 == ~cond); {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,519 INFO L290 TraceCheckUtils]: 88: Hoare triple {22791#(<= ~counter~0 4)} assume true; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,520 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {22791#(<= ~counter~0 4)} {22791#(<= ~counter~0 4)} #87#return; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,520 INFO L290 TraceCheckUtils]: 90: Hoare triple {22791#(<= ~counter~0 4)} assume !(~r~0 >= 2 * ~b~0); {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,520 INFO L290 TraceCheckUtils]: 91: Hoare triple {22791#(<= ~counter~0 4)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {22791#(<= ~counter~0 4)} is VALID [2022-04-08 11:32:31,521 INFO L290 TraceCheckUtils]: 92: Hoare triple {22791#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,521 INFO L290 TraceCheckUtils]: 93: Hoare triple {22849#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,521 INFO L272 TraceCheckUtils]: 94: Hoare triple {22849#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,522 INFO L290 TraceCheckUtils]: 95: Hoare triple {22849#(<= ~counter~0 5)} ~cond := #in~cond; {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,522 INFO L290 TraceCheckUtils]: 96: Hoare triple {22849#(<= ~counter~0 5)} assume !(0 == ~cond); {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,522 INFO L290 TraceCheckUtils]: 97: Hoare triple {22849#(<= ~counter~0 5)} assume true; {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,523 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {22849#(<= ~counter~0 5)} {22849#(<= ~counter~0 5)} #79#return; {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,523 INFO L272 TraceCheckUtils]: 99: Hoare triple {22849#(<= ~counter~0 5)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,523 INFO L290 TraceCheckUtils]: 100: Hoare triple {22849#(<= ~counter~0 5)} ~cond := #in~cond; {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,524 INFO L290 TraceCheckUtils]: 101: Hoare triple {22849#(<= ~counter~0 5)} assume !(0 == ~cond); {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,524 INFO L290 TraceCheckUtils]: 102: Hoare triple {22849#(<= ~counter~0 5)} assume true; {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,524 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {22849#(<= ~counter~0 5)} {22849#(<= ~counter~0 5)} #81#return; {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,525 INFO L290 TraceCheckUtils]: 104: Hoare triple {22849#(<= ~counter~0 5)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {22849#(<= ~counter~0 5)} is VALID [2022-04-08 11:32:31,525 INFO L290 TraceCheckUtils]: 105: Hoare triple {22849#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,525 INFO L290 TraceCheckUtils]: 106: Hoare triple {22889#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,526 INFO L272 TraceCheckUtils]: 107: Hoare triple {22889#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,526 INFO L290 TraceCheckUtils]: 108: Hoare triple {22889#(<= ~counter~0 6)} ~cond := #in~cond; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,526 INFO L290 TraceCheckUtils]: 109: Hoare triple {22889#(<= ~counter~0 6)} assume !(0 == ~cond); {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,526 INFO L290 TraceCheckUtils]: 110: Hoare triple {22889#(<= ~counter~0 6)} assume true; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,527 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {22889#(<= ~counter~0 6)} {22889#(<= ~counter~0 6)} #83#return; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,527 INFO L272 TraceCheckUtils]: 112: Hoare triple {22889#(<= ~counter~0 6)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,528 INFO L290 TraceCheckUtils]: 113: Hoare triple {22889#(<= ~counter~0 6)} ~cond := #in~cond; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,528 INFO L290 TraceCheckUtils]: 114: Hoare triple {22889#(<= ~counter~0 6)} assume !(0 == ~cond); {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,528 INFO L290 TraceCheckUtils]: 115: Hoare triple {22889#(<= ~counter~0 6)} assume true; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,529 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {22889#(<= ~counter~0 6)} {22889#(<= ~counter~0 6)} #85#return; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,529 INFO L272 TraceCheckUtils]: 117: Hoare triple {22889#(<= ~counter~0 6)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,529 INFO L290 TraceCheckUtils]: 118: Hoare triple {22889#(<= ~counter~0 6)} ~cond := #in~cond; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,529 INFO L290 TraceCheckUtils]: 119: Hoare triple {22889#(<= ~counter~0 6)} assume !(0 == ~cond); {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,530 INFO L290 TraceCheckUtils]: 120: Hoare triple {22889#(<= ~counter~0 6)} assume true; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,530 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {22889#(<= ~counter~0 6)} {22889#(<= ~counter~0 6)} #87#return; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,530 INFO L290 TraceCheckUtils]: 122: Hoare triple {22889#(<= ~counter~0 6)} assume !!(~r~0 >= 2 * ~b~0); {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,531 INFO L272 TraceCheckUtils]: 123: Hoare triple {22889#(<= ~counter~0 6)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,531 INFO L290 TraceCheckUtils]: 124: Hoare triple {22889#(<= ~counter~0 6)} ~cond := #in~cond; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,531 INFO L290 TraceCheckUtils]: 125: Hoare triple {22889#(<= ~counter~0 6)} assume !(0 == ~cond); {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,531 INFO L290 TraceCheckUtils]: 126: Hoare triple {22889#(<= ~counter~0 6)} assume true; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,532 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {22889#(<= ~counter~0 6)} {22889#(<= ~counter~0 6)} #89#return; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,532 INFO L290 TraceCheckUtils]: 128: Hoare triple {22889#(<= ~counter~0 6)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {22889#(<= ~counter~0 6)} is VALID [2022-04-08 11:32:31,532 INFO L290 TraceCheckUtils]: 129: Hoare triple {22889#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22962#(<= |main_#t~post7| 6)} is VALID [2022-04-08 11:32:31,533 INFO L290 TraceCheckUtils]: 130: Hoare triple {22962#(<= |main_#t~post7| 6)} assume !(#t~post7 < 50);havoc #t~post7; {22564#false} is VALID [2022-04-08 11:32:31,533 INFO L290 TraceCheckUtils]: 131: Hoare triple {22564#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {22564#false} is VALID [2022-04-08 11:32:31,533 INFO L290 TraceCheckUtils]: 132: Hoare triple {22564#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22564#false} is VALID [2022-04-08 11:32:31,533 INFO L290 TraceCheckUtils]: 133: Hoare triple {22564#false} assume !(#t~post6 < 50);havoc #t~post6; {22564#false} is VALID [2022-04-08 11:32:31,533 INFO L272 TraceCheckUtils]: 134: Hoare triple {22564#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22564#false} is VALID [2022-04-08 11:32:31,533 INFO L290 TraceCheckUtils]: 135: Hoare triple {22564#false} ~cond := #in~cond; {22564#false} is VALID [2022-04-08 11:32:31,533 INFO L290 TraceCheckUtils]: 136: Hoare triple {22564#false} assume 0 == ~cond; {22564#false} is VALID [2022-04-08 11:32:31,533 INFO L290 TraceCheckUtils]: 137: Hoare triple {22564#false} assume !false; {22564#false} is VALID [2022-04-08 11:32:31,534 INFO L134 CoverageAnalysis]: Checked inductivity of 782 backedges. 43 proven. 647 refuted. 0 times theorem prover too weak. 92 trivial. 0 not checked. [2022-04-08 11:32:31,534 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:32:32,046 INFO L290 TraceCheckUtils]: 137: Hoare triple {22564#false} assume !false; {22564#false} is VALID [2022-04-08 11:32:32,046 INFO L290 TraceCheckUtils]: 136: Hoare triple {22564#false} assume 0 == ~cond; {22564#false} is VALID [2022-04-08 11:32:32,046 INFO L290 TraceCheckUtils]: 135: Hoare triple {22564#false} ~cond := #in~cond; {22564#false} is VALID [2022-04-08 11:32:32,046 INFO L272 TraceCheckUtils]: 134: Hoare triple {22564#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22564#false} is VALID [2022-04-08 11:32:32,046 INFO L290 TraceCheckUtils]: 133: Hoare triple {22564#false} assume !(#t~post6 < 50);havoc #t~post6; {22564#false} is VALID [2022-04-08 11:32:32,046 INFO L290 TraceCheckUtils]: 132: Hoare triple {22564#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22564#false} is VALID [2022-04-08 11:32:32,047 INFO L290 TraceCheckUtils]: 131: Hoare triple {22564#false} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {22564#false} is VALID [2022-04-08 11:32:32,047 INFO L290 TraceCheckUtils]: 130: Hoare triple {23008#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {22564#false} is VALID [2022-04-08 11:32:32,047 INFO L290 TraceCheckUtils]: 129: Hoare triple {23012#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23008#(< |main_#t~post7| 50)} is VALID [2022-04-08 11:32:32,047 INFO L290 TraceCheckUtils]: 128: Hoare triple {23012#(< ~counter~0 50)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {23012#(< ~counter~0 50)} is VALID [2022-04-08 11:32:32,048 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {22563#true} {23012#(< ~counter~0 50)} #89#return; {23012#(< ~counter~0 50)} is VALID [2022-04-08 11:32:32,048 INFO L290 TraceCheckUtils]: 126: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,048 INFO L290 TraceCheckUtils]: 125: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,048 INFO L290 TraceCheckUtils]: 124: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,048 INFO L272 TraceCheckUtils]: 123: Hoare triple {23012#(< ~counter~0 50)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,048 INFO L290 TraceCheckUtils]: 122: Hoare triple {23012#(< ~counter~0 50)} assume !!(~r~0 >= 2 * ~b~0); {23012#(< ~counter~0 50)} is VALID [2022-04-08 11:32:32,049 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {22563#true} {23012#(< ~counter~0 50)} #87#return; {23012#(< ~counter~0 50)} is VALID [2022-04-08 11:32:32,049 INFO L290 TraceCheckUtils]: 120: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,049 INFO L290 TraceCheckUtils]: 119: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,049 INFO L290 TraceCheckUtils]: 118: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,049 INFO L272 TraceCheckUtils]: 117: Hoare triple {23012#(< ~counter~0 50)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,050 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {22563#true} {23012#(< ~counter~0 50)} #85#return; {23012#(< ~counter~0 50)} is VALID [2022-04-08 11:32:32,050 INFO L290 TraceCheckUtils]: 115: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,050 INFO L290 TraceCheckUtils]: 114: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,050 INFO L290 TraceCheckUtils]: 113: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,050 INFO L272 TraceCheckUtils]: 112: Hoare triple {23012#(< ~counter~0 50)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,050 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {22563#true} {23012#(< ~counter~0 50)} #83#return; {23012#(< ~counter~0 50)} is VALID [2022-04-08 11:32:32,050 INFO L290 TraceCheckUtils]: 110: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,050 INFO L290 TraceCheckUtils]: 109: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,050 INFO L290 TraceCheckUtils]: 108: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,051 INFO L272 TraceCheckUtils]: 107: Hoare triple {23012#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,051 INFO L290 TraceCheckUtils]: 106: Hoare triple {23012#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {23012#(< ~counter~0 50)} is VALID [2022-04-08 11:32:32,052 INFO L290 TraceCheckUtils]: 105: Hoare triple {23085#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23012#(< ~counter~0 50)} is VALID [2022-04-08 11:32:32,052 INFO L290 TraceCheckUtils]: 104: Hoare triple {23085#(< ~counter~0 49)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {23085#(< ~counter~0 49)} is VALID [2022-04-08 11:32:32,052 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {22563#true} {23085#(< ~counter~0 49)} #81#return; {23085#(< ~counter~0 49)} is VALID [2022-04-08 11:32:32,052 INFO L290 TraceCheckUtils]: 102: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,052 INFO L290 TraceCheckUtils]: 101: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,053 INFO L290 TraceCheckUtils]: 100: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,053 INFO L272 TraceCheckUtils]: 99: Hoare triple {23085#(< ~counter~0 49)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,053 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {22563#true} {23085#(< ~counter~0 49)} #79#return; {23085#(< ~counter~0 49)} is VALID [2022-04-08 11:32:32,053 INFO L290 TraceCheckUtils]: 97: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,053 INFO L290 TraceCheckUtils]: 96: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,053 INFO L290 TraceCheckUtils]: 95: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,053 INFO L272 TraceCheckUtils]: 94: Hoare triple {23085#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,054 INFO L290 TraceCheckUtils]: 93: Hoare triple {23085#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {23085#(< ~counter~0 49)} is VALID [2022-04-08 11:32:32,054 INFO L290 TraceCheckUtils]: 92: Hoare triple {23125#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23085#(< ~counter~0 49)} is VALID [2022-04-08 11:32:32,054 INFO L290 TraceCheckUtils]: 91: Hoare triple {23125#(< ~counter~0 48)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {23125#(< ~counter~0 48)} is VALID [2022-04-08 11:32:32,055 INFO L290 TraceCheckUtils]: 90: Hoare triple {23125#(< ~counter~0 48)} assume !(~r~0 >= 2 * ~b~0); {23125#(< ~counter~0 48)} is VALID [2022-04-08 11:32:32,055 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {22563#true} {23125#(< ~counter~0 48)} #87#return; {23125#(< ~counter~0 48)} is VALID [2022-04-08 11:32:32,055 INFO L290 TraceCheckUtils]: 88: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,055 INFO L290 TraceCheckUtils]: 87: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,055 INFO L290 TraceCheckUtils]: 86: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,055 INFO L272 TraceCheckUtils]: 85: Hoare triple {23125#(< ~counter~0 48)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,056 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {22563#true} {23125#(< ~counter~0 48)} #85#return; {23125#(< ~counter~0 48)} is VALID [2022-04-08 11:32:32,056 INFO L290 TraceCheckUtils]: 83: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,056 INFO L290 TraceCheckUtils]: 82: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,056 INFO L290 TraceCheckUtils]: 81: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,056 INFO L272 TraceCheckUtils]: 80: Hoare triple {23125#(< ~counter~0 48)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,056 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {22563#true} {23125#(< ~counter~0 48)} #83#return; {23125#(< ~counter~0 48)} is VALID [2022-04-08 11:32:32,057 INFO L290 TraceCheckUtils]: 78: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,057 INFO L290 TraceCheckUtils]: 77: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,057 INFO L290 TraceCheckUtils]: 76: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,057 INFO L272 TraceCheckUtils]: 75: Hoare triple {23125#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,057 INFO L290 TraceCheckUtils]: 74: Hoare triple {23125#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {23125#(< ~counter~0 48)} is VALID [2022-04-08 11:32:32,057 INFO L290 TraceCheckUtils]: 73: Hoare triple {23183#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23125#(< ~counter~0 48)} is VALID [2022-04-08 11:32:32,058 INFO L290 TraceCheckUtils]: 72: Hoare triple {23183#(< ~counter~0 47)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {23183#(< ~counter~0 47)} is VALID [2022-04-08 11:32:32,058 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {22563#true} {23183#(< ~counter~0 47)} #89#return; {23183#(< ~counter~0 47)} is VALID [2022-04-08 11:32:32,058 INFO L290 TraceCheckUtils]: 70: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,058 INFO L290 TraceCheckUtils]: 69: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,058 INFO L290 TraceCheckUtils]: 68: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,058 INFO L272 TraceCheckUtils]: 67: Hoare triple {23183#(< ~counter~0 47)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,059 INFO L290 TraceCheckUtils]: 66: Hoare triple {23183#(< ~counter~0 47)} assume !!(~r~0 >= 2 * ~b~0); {23183#(< ~counter~0 47)} is VALID [2022-04-08 11:32:32,059 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {22563#true} {23183#(< ~counter~0 47)} #87#return; {23183#(< ~counter~0 47)} is VALID [2022-04-08 11:32:32,059 INFO L290 TraceCheckUtils]: 64: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,059 INFO L290 TraceCheckUtils]: 63: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,059 INFO L290 TraceCheckUtils]: 62: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,059 INFO L272 TraceCheckUtils]: 61: Hoare triple {23183#(< ~counter~0 47)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,060 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {22563#true} {23183#(< ~counter~0 47)} #85#return; {23183#(< ~counter~0 47)} is VALID [2022-04-08 11:32:32,060 INFO L290 TraceCheckUtils]: 59: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,060 INFO L290 TraceCheckUtils]: 58: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,060 INFO L290 TraceCheckUtils]: 57: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,060 INFO L272 TraceCheckUtils]: 56: Hoare triple {23183#(< ~counter~0 47)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,061 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {22563#true} {23183#(< ~counter~0 47)} #83#return; {23183#(< ~counter~0 47)} is VALID [2022-04-08 11:32:32,061 INFO L290 TraceCheckUtils]: 54: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,070 INFO L290 TraceCheckUtils]: 53: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,070 INFO L290 TraceCheckUtils]: 52: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,070 INFO L272 TraceCheckUtils]: 51: Hoare triple {23183#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,071 INFO L290 TraceCheckUtils]: 50: Hoare triple {23183#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {23183#(< ~counter~0 47)} is VALID [2022-04-08 11:32:32,072 INFO L290 TraceCheckUtils]: 49: Hoare triple {23256#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23183#(< ~counter~0 47)} is VALID [2022-04-08 11:32:32,072 INFO L290 TraceCheckUtils]: 48: Hoare triple {23256#(< ~counter~0 46)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {23256#(< ~counter~0 46)} is VALID [2022-04-08 11:32:32,073 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {22563#true} {23256#(< ~counter~0 46)} #89#return; {23256#(< ~counter~0 46)} is VALID [2022-04-08 11:32:32,073 INFO L290 TraceCheckUtils]: 46: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,073 INFO L290 TraceCheckUtils]: 45: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,073 INFO L290 TraceCheckUtils]: 44: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,073 INFO L272 TraceCheckUtils]: 43: Hoare triple {23256#(< ~counter~0 46)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,073 INFO L290 TraceCheckUtils]: 42: Hoare triple {23256#(< ~counter~0 46)} assume !!(~r~0 >= 2 * ~b~0); {23256#(< ~counter~0 46)} is VALID [2022-04-08 11:32:32,074 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22563#true} {23256#(< ~counter~0 46)} #87#return; {23256#(< ~counter~0 46)} is VALID [2022-04-08 11:32:32,074 INFO L290 TraceCheckUtils]: 40: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,074 INFO L290 TraceCheckUtils]: 39: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,074 INFO L290 TraceCheckUtils]: 38: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,074 INFO L272 TraceCheckUtils]: 37: Hoare triple {23256#(< ~counter~0 46)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,075 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22563#true} {23256#(< ~counter~0 46)} #85#return; {23256#(< ~counter~0 46)} is VALID [2022-04-08 11:32:32,075 INFO L290 TraceCheckUtils]: 35: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,075 INFO L290 TraceCheckUtils]: 34: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,075 INFO L290 TraceCheckUtils]: 33: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,075 INFO L272 TraceCheckUtils]: 32: Hoare triple {23256#(< ~counter~0 46)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,075 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {22563#true} {23256#(< ~counter~0 46)} #83#return; {23256#(< ~counter~0 46)} is VALID [2022-04-08 11:32:32,075 INFO L290 TraceCheckUtils]: 30: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,075 INFO L290 TraceCheckUtils]: 29: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,075 INFO L290 TraceCheckUtils]: 28: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,076 INFO L272 TraceCheckUtils]: 27: Hoare triple {23256#(< ~counter~0 46)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,076 INFO L290 TraceCheckUtils]: 26: Hoare triple {23256#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {23256#(< ~counter~0 46)} is VALID [2022-04-08 11:32:32,076 INFO L290 TraceCheckUtils]: 25: Hoare triple {23329#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23256#(< ~counter~0 46)} is VALID [2022-04-08 11:32:32,077 INFO L290 TraceCheckUtils]: 24: Hoare triple {23329#(< ~counter~0 45)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {23329#(< ~counter~0 45)} is VALID [2022-04-08 11:32:32,077 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {22563#true} {23329#(< ~counter~0 45)} #81#return; {23329#(< ~counter~0 45)} is VALID [2022-04-08 11:32:32,077 INFO L290 TraceCheckUtils]: 22: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,077 INFO L290 TraceCheckUtils]: 21: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,077 INFO L290 TraceCheckUtils]: 20: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,077 INFO L272 TraceCheckUtils]: 19: Hoare triple {23329#(< ~counter~0 45)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,078 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {22563#true} {23329#(< ~counter~0 45)} #79#return; {23329#(< ~counter~0 45)} is VALID [2022-04-08 11:32:32,078 INFO L290 TraceCheckUtils]: 17: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,078 INFO L290 TraceCheckUtils]: 16: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,078 INFO L290 TraceCheckUtils]: 15: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,078 INFO L272 TraceCheckUtils]: 14: Hoare triple {23329#(< ~counter~0 45)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,078 INFO L290 TraceCheckUtils]: 13: Hoare triple {23329#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {23329#(< ~counter~0 45)} is VALID [2022-04-08 11:32:32,079 INFO L290 TraceCheckUtils]: 12: Hoare triple {23369#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23329#(< ~counter~0 45)} is VALID [2022-04-08 11:32:32,079 INFO L290 TraceCheckUtils]: 11: Hoare triple {23369#(< ~counter~0 44)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {23369#(< ~counter~0 44)} is VALID [2022-04-08 11:32:32,079 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22563#true} {23369#(< ~counter~0 44)} #77#return; {23369#(< ~counter~0 44)} is VALID [2022-04-08 11:32:32,079 INFO L290 TraceCheckUtils]: 9: Hoare triple {22563#true} assume true; {22563#true} is VALID [2022-04-08 11:32:32,080 INFO L290 TraceCheckUtils]: 8: Hoare triple {22563#true} assume !(0 == ~cond); {22563#true} is VALID [2022-04-08 11:32:32,080 INFO L290 TraceCheckUtils]: 7: Hoare triple {22563#true} ~cond := #in~cond; {22563#true} is VALID [2022-04-08 11:32:32,080 INFO L272 TraceCheckUtils]: 6: Hoare triple {23369#(< ~counter~0 44)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22563#true} is VALID [2022-04-08 11:32:32,080 INFO L290 TraceCheckUtils]: 5: Hoare triple {23369#(< ~counter~0 44)} 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; {23369#(< ~counter~0 44)} is VALID [2022-04-08 11:32:32,080 INFO L272 TraceCheckUtils]: 4: Hoare triple {23369#(< ~counter~0 44)} call #t~ret8 := main(); {23369#(< ~counter~0 44)} is VALID [2022-04-08 11:32:32,081 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23369#(< ~counter~0 44)} {22563#true} #93#return; {23369#(< ~counter~0 44)} is VALID [2022-04-08 11:32:32,081 INFO L290 TraceCheckUtils]: 2: Hoare triple {23369#(< ~counter~0 44)} assume true; {23369#(< ~counter~0 44)} is VALID [2022-04-08 11:32:32,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {22563#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; {23369#(< ~counter~0 44)} is VALID [2022-04-08 11:32:32,081 INFO L272 TraceCheckUtils]: 0: Hoare triple {22563#true} call ULTIMATE.init(); {22563#true} is VALID [2022-04-08 11:32:32,082 INFO L134 CoverageAnalysis]: Checked inductivity of 782 backedges. 43 proven. 55 refuted. 0 times theorem prover too weak. 684 trivial. 0 not checked. [2022-04-08 11:32:32,082 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:32:32,082 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1449229796] [2022-04-08 11:32:32,082 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:32:32,082 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2019691819] [2022-04-08 11:32:32,082 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2019691819] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:32:32,082 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:32:32,082 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-08 11:32:32,082 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:32:32,083 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1728809629] [2022-04-08 11:32:32,083 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1728809629] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:32:32,083 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:32:32,083 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 11:32:32,083 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [117172274] [2022-04-08 11:32:32,083 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:32:32,083 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.5) internal successors, (55), 9 states have internal predecessors, (55), 9 states have call successors, (23), 9 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) Word has length 138 [2022-04-08 11:32:32,083 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:32:32,084 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 5.5) internal successors, (55), 9 states have internal predecessors, (55), 9 states have call successors, (23), 9 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:32:32,153 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:32:32,153 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 11:32:32,153 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:32:32,153 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 11:32:32,153 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-08 11:32:32,153 INFO L87 Difference]: Start difference. First operand 211 states and 251 transitions. Second operand has 10 states, 10 states have (on average 5.5) internal successors, (55), 9 states have internal predecessors, (55), 9 states have call successors, (23), 9 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:32:33,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:32:33,097 INFO L93 Difference]: Finished difference Result 300 states and 342 transitions. [2022-04-08 11:32:33,097 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 11:32:33,097 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 5.5) internal successors, (55), 9 states have internal predecessors, (55), 9 states have call successors, (23), 9 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) Word has length 138 [2022-04-08 11:32:33,099 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:32:33,099 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.5) internal successors, (55), 9 states have internal predecessors, (55), 9 states have call successors, (23), 9 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:32:33,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-08 11:32:33,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 5.5) internal successors, (55), 9 states have internal predecessors, (55), 9 states have call successors, (23), 9 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:32:33,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-08 11:32:33,107 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 158 transitions. [2022-04-08 11:32:33,218 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:32:33,223 INFO L225 Difference]: With dead ends: 300 [2022-04-08 11:32:33,223 INFO L226 Difference]: Without dead ends: 292 [2022-04-08 11:32:33,223 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 280 GetRequests, 259 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=205, Invalid=301, Unknown=0, NotChecked=0, Total=506 [2022-04-08 11:32:33,224 INFO L913 BasicCegarLoop]: 65 mSDtfsCounter, 54 mSDsluCounter, 181 mSDsCounter, 0 mSdLazyCounter, 116 mSolverCounterSat, 61 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 246 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 61 IncrementalHoareTripleChecker+Valid, 116 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 11:32:33,224 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [54 Valid, 246 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [61 Valid, 116 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 11:32:33,224 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 292 states. [2022-04-08 11:32:33,601 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 292 to 287. [2022-04-08 11:32:33,601 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:32:33,602 INFO L82 GeneralOperation]: Start isEquivalent. First operand 292 states. Second operand has 287 states, 187 states have (on average 1.0962566844919786) internal successors, (205), 189 states have internal predecessors, (205), 63 states have call successors, (63), 38 states have call predecessors, (63), 36 states have return successors, (60), 59 states have call predecessors, (60), 60 states have call successors, (60) [2022-04-08 11:32:33,602 INFO L74 IsIncluded]: Start isIncluded. First operand 292 states. Second operand has 287 states, 187 states have (on average 1.0962566844919786) internal successors, (205), 189 states have internal predecessors, (205), 63 states have call successors, (63), 38 states have call predecessors, (63), 36 states have return successors, (60), 59 states have call predecessors, (60), 60 states have call successors, (60) [2022-04-08 11:32:33,603 INFO L87 Difference]: Start difference. First operand 292 states. Second operand has 287 states, 187 states have (on average 1.0962566844919786) internal successors, (205), 189 states have internal predecessors, (205), 63 states have call successors, (63), 38 states have call predecessors, (63), 36 states have return successors, (60), 59 states have call predecessors, (60), 60 states have call successors, (60) [2022-04-08 11:32:33,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:32:33,607 INFO L93 Difference]: Finished difference Result 292 states and 333 transitions. [2022-04-08 11:32:33,607 INFO L276 IsEmpty]: Start isEmpty. Operand 292 states and 333 transitions. [2022-04-08 11:32:33,607 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:32:33,607 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:32:33,607 INFO L74 IsIncluded]: Start isIncluded. First operand has 287 states, 187 states have (on average 1.0962566844919786) internal successors, (205), 189 states have internal predecessors, (205), 63 states have call successors, (63), 38 states have call predecessors, (63), 36 states have return successors, (60), 59 states have call predecessors, (60), 60 states have call successors, (60) Second operand 292 states. [2022-04-08 11:32:33,608 INFO L87 Difference]: Start difference. First operand has 287 states, 187 states have (on average 1.0962566844919786) internal successors, (205), 189 states have internal predecessors, (205), 63 states have call successors, (63), 38 states have call predecessors, (63), 36 states have return successors, (60), 59 states have call predecessors, (60), 60 states have call successors, (60) Second operand 292 states. [2022-04-08 11:32:33,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:32:33,612 INFO L93 Difference]: Finished difference Result 292 states and 333 transitions. [2022-04-08 11:32:33,612 INFO L276 IsEmpty]: Start isEmpty. Operand 292 states and 333 transitions. [2022-04-08 11:32:33,612 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:32:33,612 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:32:33,612 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:32:33,612 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:32:33,613 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 287 states, 187 states have (on average 1.0962566844919786) internal successors, (205), 189 states have internal predecessors, (205), 63 states have call successors, (63), 38 states have call predecessors, (63), 36 states have return successors, (60), 59 states have call predecessors, (60), 60 states have call successors, (60) [2022-04-08 11:32:33,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 287 states to 287 states and 328 transitions. [2022-04-08 11:32:33,617 INFO L78 Accepts]: Start accepts. Automaton has 287 states and 328 transitions. Word has length 138 [2022-04-08 11:32:33,617 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:32:33,617 INFO L478 AbstractCegarLoop]: Abstraction has 287 states and 328 transitions. [2022-04-08 11:32:33,618 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 5.5) internal successors, (55), 9 states have internal predecessors, (55), 9 states have call successors, (23), 9 states have call predecessors, (23), 7 states have return successors, (21), 7 states have call predecessors, (21), 8 states have call successors, (21) [2022-04-08 11:32:33,618 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 287 states and 328 transitions. [2022-04-08 11:32:34,076 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 328 edges. 328 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:32:34,076 INFO L276 IsEmpty]: Start isEmpty. Operand 287 states and 328 transitions. [2022-04-08 11:32:34,077 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 155 [2022-04-08 11:32:34,077 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:32:34,077 INFO L499 BasicCegarLoop]: trace histogram [23, 22, 22, 5, 5, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:32:34,097 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-08 11:32:34,282 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-08 11:32:34,283 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:32:34,283 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:32:34,283 INFO L85 PathProgramCache]: Analyzing trace with hash -559679257, now seen corresponding path program 7 times [2022-04-08 11:32:34,283 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:32:34,283 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1876824586] [2022-04-08 11:33:19,562 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:33:19,563 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:33:19,563 INFO L85 PathProgramCache]: Analyzing trace with hash -559679257, now seen corresponding path program 8 times [2022-04-08 11:33:19,563 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:33:19,563 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [45377112] [2022-04-08 11:33:19,563 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:33:19,563 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:33:19,576 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:33:19,577 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1058193382] [2022-04-08 11:33:19,577 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 11:33:19,577 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:33:19,577 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:33:19,578 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:33:19,578 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-08 11:33:19,648 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 11:33:19,649 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:33:19,650 INFO L263 TraceCheckSpWp]: Trace formula consists of 354 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-08 11:33:19,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:33:19,679 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:33:20,249 INFO L272 TraceCheckUtils]: 0: Hoare triple {25176#true} call ULTIMATE.init(); {25176#true} is VALID [2022-04-08 11:33:20,250 INFO L290 TraceCheckUtils]: 1: Hoare triple {25176#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; {25184#(<= ~counter~0 0)} is VALID [2022-04-08 11:33:20,250 INFO L290 TraceCheckUtils]: 2: Hoare triple {25184#(<= ~counter~0 0)} assume true; {25184#(<= ~counter~0 0)} is VALID [2022-04-08 11:33:20,250 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25184#(<= ~counter~0 0)} {25176#true} #93#return; {25184#(<= ~counter~0 0)} is VALID [2022-04-08 11:33:20,250 INFO L272 TraceCheckUtils]: 4: Hoare triple {25184#(<= ~counter~0 0)} call #t~ret8 := main(); {25184#(<= ~counter~0 0)} is VALID [2022-04-08 11:33:20,251 INFO L290 TraceCheckUtils]: 5: Hoare triple {25184#(<= ~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; {25184#(<= ~counter~0 0)} is VALID [2022-04-08 11:33:20,251 INFO L272 TraceCheckUtils]: 6: Hoare triple {25184#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {25184#(<= ~counter~0 0)} is VALID [2022-04-08 11:33:20,251 INFO L290 TraceCheckUtils]: 7: Hoare triple {25184#(<= ~counter~0 0)} ~cond := #in~cond; {25184#(<= ~counter~0 0)} is VALID [2022-04-08 11:33:20,252 INFO L290 TraceCheckUtils]: 8: Hoare triple {25184#(<= ~counter~0 0)} assume !(0 == ~cond); {25184#(<= ~counter~0 0)} is VALID [2022-04-08 11:33:20,252 INFO L290 TraceCheckUtils]: 9: Hoare triple {25184#(<= ~counter~0 0)} assume true; {25184#(<= ~counter~0 0)} is VALID [2022-04-08 11:33:20,252 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25184#(<= ~counter~0 0)} {25184#(<= ~counter~0 0)} #77#return; {25184#(<= ~counter~0 0)} is VALID [2022-04-08 11:33:20,252 INFO L290 TraceCheckUtils]: 11: Hoare triple {25184#(<= ~counter~0 0)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {25184#(<= ~counter~0 0)} is VALID [2022-04-08 11:33:20,253 INFO L290 TraceCheckUtils]: 12: Hoare triple {25184#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,253 INFO L290 TraceCheckUtils]: 13: Hoare triple {25218#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,254 INFO L272 TraceCheckUtils]: 14: Hoare triple {25218#(<= ~counter~0 1)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,254 INFO L290 TraceCheckUtils]: 15: Hoare triple {25218#(<= ~counter~0 1)} ~cond := #in~cond; {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,254 INFO L290 TraceCheckUtils]: 16: Hoare triple {25218#(<= ~counter~0 1)} assume !(0 == ~cond); {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,255 INFO L290 TraceCheckUtils]: 17: Hoare triple {25218#(<= ~counter~0 1)} assume true; {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,255 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {25218#(<= ~counter~0 1)} {25218#(<= ~counter~0 1)} #79#return; {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,256 INFO L272 TraceCheckUtils]: 19: Hoare triple {25218#(<= ~counter~0 1)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,256 INFO L290 TraceCheckUtils]: 20: Hoare triple {25218#(<= ~counter~0 1)} ~cond := #in~cond; {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,256 INFO L290 TraceCheckUtils]: 21: Hoare triple {25218#(<= ~counter~0 1)} assume !(0 == ~cond); {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,256 INFO L290 TraceCheckUtils]: 22: Hoare triple {25218#(<= ~counter~0 1)} assume true; {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,257 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {25218#(<= ~counter~0 1)} {25218#(<= ~counter~0 1)} #81#return; {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,257 INFO L290 TraceCheckUtils]: 24: Hoare triple {25218#(<= ~counter~0 1)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {25218#(<= ~counter~0 1)} is VALID [2022-04-08 11:33:20,258 INFO L290 TraceCheckUtils]: 25: Hoare triple {25218#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,258 INFO L290 TraceCheckUtils]: 26: Hoare triple {25258#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,258 INFO L272 TraceCheckUtils]: 27: Hoare triple {25258#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,258 INFO L290 TraceCheckUtils]: 28: Hoare triple {25258#(<= ~counter~0 2)} ~cond := #in~cond; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,259 INFO L290 TraceCheckUtils]: 29: Hoare triple {25258#(<= ~counter~0 2)} assume !(0 == ~cond); {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,259 INFO L290 TraceCheckUtils]: 30: Hoare triple {25258#(<= ~counter~0 2)} assume true; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,259 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {25258#(<= ~counter~0 2)} {25258#(<= ~counter~0 2)} #83#return; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,260 INFO L272 TraceCheckUtils]: 32: Hoare triple {25258#(<= ~counter~0 2)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,260 INFO L290 TraceCheckUtils]: 33: Hoare triple {25258#(<= ~counter~0 2)} ~cond := #in~cond; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,260 INFO L290 TraceCheckUtils]: 34: Hoare triple {25258#(<= ~counter~0 2)} assume !(0 == ~cond); {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,261 INFO L290 TraceCheckUtils]: 35: Hoare triple {25258#(<= ~counter~0 2)} assume true; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,261 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {25258#(<= ~counter~0 2)} {25258#(<= ~counter~0 2)} #85#return; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,261 INFO L272 TraceCheckUtils]: 37: Hoare triple {25258#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,262 INFO L290 TraceCheckUtils]: 38: Hoare triple {25258#(<= ~counter~0 2)} ~cond := #in~cond; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,262 INFO L290 TraceCheckUtils]: 39: Hoare triple {25258#(<= ~counter~0 2)} assume !(0 == ~cond); {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,262 INFO L290 TraceCheckUtils]: 40: Hoare triple {25258#(<= ~counter~0 2)} assume true; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,263 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {25258#(<= ~counter~0 2)} {25258#(<= ~counter~0 2)} #87#return; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,263 INFO L290 TraceCheckUtils]: 42: Hoare triple {25258#(<= ~counter~0 2)} assume !!(~r~0 >= 2 * ~b~0); {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,263 INFO L272 TraceCheckUtils]: 43: Hoare triple {25258#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,263 INFO L290 TraceCheckUtils]: 44: Hoare triple {25258#(<= ~counter~0 2)} ~cond := #in~cond; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,264 INFO L290 TraceCheckUtils]: 45: Hoare triple {25258#(<= ~counter~0 2)} assume !(0 == ~cond); {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,264 INFO L290 TraceCheckUtils]: 46: Hoare triple {25258#(<= ~counter~0 2)} assume true; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,264 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {25258#(<= ~counter~0 2)} {25258#(<= ~counter~0 2)} #89#return; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,265 INFO L290 TraceCheckUtils]: 48: Hoare triple {25258#(<= ~counter~0 2)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {25258#(<= ~counter~0 2)} is VALID [2022-04-08 11:33:20,265 INFO L290 TraceCheckUtils]: 49: Hoare triple {25258#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,265 INFO L290 TraceCheckUtils]: 50: Hoare triple {25331#(<= ~counter~0 3)} assume !!(#t~post7 < 50);havoc #t~post7; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,271 INFO L272 TraceCheckUtils]: 51: Hoare triple {25331#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,271 INFO L290 TraceCheckUtils]: 52: Hoare triple {25331#(<= ~counter~0 3)} ~cond := #in~cond; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,272 INFO L290 TraceCheckUtils]: 53: Hoare triple {25331#(<= ~counter~0 3)} assume !(0 == ~cond); {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,272 INFO L290 TraceCheckUtils]: 54: Hoare triple {25331#(<= ~counter~0 3)} assume true; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,272 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {25331#(<= ~counter~0 3)} {25331#(<= ~counter~0 3)} #83#return; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,273 INFO L272 TraceCheckUtils]: 56: Hoare triple {25331#(<= ~counter~0 3)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,273 INFO L290 TraceCheckUtils]: 57: Hoare triple {25331#(<= ~counter~0 3)} ~cond := #in~cond; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,273 INFO L290 TraceCheckUtils]: 58: Hoare triple {25331#(<= ~counter~0 3)} assume !(0 == ~cond); {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,273 INFO L290 TraceCheckUtils]: 59: Hoare triple {25331#(<= ~counter~0 3)} assume true; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,274 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {25331#(<= ~counter~0 3)} {25331#(<= ~counter~0 3)} #85#return; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,274 INFO L272 TraceCheckUtils]: 61: Hoare triple {25331#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,274 INFO L290 TraceCheckUtils]: 62: Hoare triple {25331#(<= ~counter~0 3)} ~cond := #in~cond; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,275 INFO L290 TraceCheckUtils]: 63: Hoare triple {25331#(<= ~counter~0 3)} assume !(0 == ~cond); {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,275 INFO L290 TraceCheckUtils]: 64: Hoare triple {25331#(<= ~counter~0 3)} assume true; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,275 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {25331#(<= ~counter~0 3)} {25331#(<= ~counter~0 3)} #87#return; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,276 INFO L290 TraceCheckUtils]: 66: Hoare triple {25331#(<= ~counter~0 3)} assume !!(~r~0 >= 2 * ~b~0); {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,276 INFO L272 TraceCheckUtils]: 67: Hoare triple {25331#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,276 INFO L290 TraceCheckUtils]: 68: Hoare triple {25331#(<= ~counter~0 3)} ~cond := #in~cond; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,277 INFO L290 TraceCheckUtils]: 69: Hoare triple {25331#(<= ~counter~0 3)} assume !(0 == ~cond); {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,277 INFO L290 TraceCheckUtils]: 70: Hoare triple {25331#(<= ~counter~0 3)} assume true; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,277 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {25331#(<= ~counter~0 3)} {25331#(<= ~counter~0 3)} #89#return; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,277 INFO L290 TraceCheckUtils]: 72: Hoare triple {25331#(<= ~counter~0 3)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {25331#(<= ~counter~0 3)} is VALID [2022-04-08 11:33:20,278 INFO L290 TraceCheckUtils]: 73: Hoare triple {25331#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,278 INFO L290 TraceCheckUtils]: 74: Hoare triple {25404#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,279 INFO L272 TraceCheckUtils]: 75: Hoare triple {25404#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,279 INFO L290 TraceCheckUtils]: 76: Hoare triple {25404#(<= ~counter~0 4)} ~cond := #in~cond; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,279 INFO L290 TraceCheckUtils]: 77: Hoare triple {25404#(<= ~counter~0 4)} assume !(0 == ~cond); {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,279 INFO L290 TraceCheckUtils]: 78: Hoare triple {25404#(<= ~counter~0 4)} assume true; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,280 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {25404#(<= ~counter~0 4)} {25404#(<= ~counter~0 4)} #83#return; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,280 INFO L272 TraceCheckUtils]: 80: Hoare triple {25404#(<= ~counter~0 4)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,281 INFO L290 TraceCheckUtils]: 81: Hoare triple {25404#(<= ~counter~0 4)} ~cond := #in~cond; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,281 INFO L290 TraceCheckUtils]: 82: Hoare triple {25404#(<= ~counter~0 4)} assume !(0 == ~cond); {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,281 INFO L290 TraceCheckUtils]: 83: Hoare triple {25404#(<= ~counter~0 4)} assume true; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,281 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {25404#(<= ~counter~0 4)} {25404#(<= ~counter~0 4)} #85#return; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,282 INFO L272 TraceCheckUtils]: 85: Hoare triple {25404#(<= ~counter~0 4)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,282 INFO L290 TraceCheckUtils]: 86: Hoare triple {25404#(<= ~counter~0 4)} ~cond := #in~cond; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,282 INFO L290 TraceCheckUtils]: 87: Hoare triple {25404#(<= ~counter~0 4)} assume !(0 == ~cond); {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,283 INFO L290 TraceCheckUtils]: 88: Hoare triple {25404#(<= ~counter~0 4)} assume true; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,283 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {25404#(<= ~counter~0 4)} {25404#(<= ~counter~0 4)} #87#return; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,283 INFO L290 TraceCheckUtils]: 90: Hoare triple {25404#(<= ~counter~0 4)} assume !(~r~0 >= 2 * ~b~0); {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,283 INFO L290 TraceCheckUtils]: 91: Hoare triple {25404#(<= ~counter~0 4)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {25404#(<= ~counter~0 4)} is VALID [2022-04-08 11:33:20,284 INFO L290 TraceCheckUtils]: 92: Hoare triple {25404#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,284 INFO L290 TraceCheckUtils]: 93: Hoare triple {25462#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,285 INFO L272 TraceCheckUtils]: 94: Hoare triple {25462#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,285 INFO L290 TraceCheckUtils]: 95: Hoare triple {25462#(<= ~counter~0 5)} ~cond := #in~cond; {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,285 INFO L290 TraceCheckUtils]: 96: Hoare triple {25462#(<= ~counter~0 5)} assume !(0 == ~cond); {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,285 INFO L290 TraceCheckUtils]: 97: Hoare triple {25462#(<= ~counter~0 5)} assume true; {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,286 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {25462#(<= ~counter~0 5)} {25462#(<= ~counter~0 5)} #79#return; {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,286 INFO L272 TraceCheckUtils]: 99: Hoare triple {25462#(<= ~counter~0 5)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,287 INFO L290 TraceCheckUtils]: 100: Hoare triple {25462#(<= ~counter~0 5)} ~cond := #in~cond; {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,287 INFO L290 TraceCheckUtils]: 101: Hoare triple {25462#(<= ~counter~0 5)} assume !(0 == ~cond); {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,287 INFO L290 TraceCheckUtils]: 102: Hoare triple {25462#(<= ~counter~0 5)} assume true; {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,287 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {25462#(<= ~counter~0 5)} {25462#(<= ~counter~0 5)} #81#return; {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,288 INFO L290 TraceCheckUtils]: 104: Hoare triple {25462#(<= ~counter~0 5)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {25462#(<= ~counter~0 5)} is VALID [2022-04-08 11:33:20,288 INFO L290 TraceCheckUtils]: 105: Hoare triple {25462#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,288 INFO L290 TraceCheckUtils]: 106: Hoare triple {25502#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,289 INFO L272 TraceCheckUtils]: 107: Hoare triple {25502#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,289 INFO L290 TraceCheckUtils]: 108: Hoare triple {25502#(<= ~counter~0 6)} ~cond := #in~cond; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,289 INFO L290 TraceCheckUtils]: 109: Hoare triple {25502#(<= ~counter~0 6)} assume !(0 == ~cond); {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,290 INFO L290 TraceCheckUtils]: 110: Hoare triple {25502#(<= ~counter~0 6)} assume true; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,290 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {25502#(<= ~counter~0 6)} {25502#(<= ~counter~0 6)} #83#return; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,290 INFO L272 TraceCheckUtils]: 112: Hoare triple {25502#(<= ~counter~0 6)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,291 INFO L290 TraceCheckUtils]: 113: Hoare triple {25502#(<= ~counter~0 6)} ~cond := #in~cond; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,291 INFO L290 TraceCheckUtils]: 114: Hoare triple {25502#(<= ~counter~0 6)} assume !(0 == ~cond); {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,291 INFO L290 TraceCheckUtils]: 115: Hoare triple {25502#(<= ~counter~0 6)} assume true; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,292 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {25502#(<= ~counter~0 6)} {25502#(<= ~counter~0 6)} #85#return; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,292 INFO L272 TraceCheckUtils]: 117: Hoare triple {25502#(<= ~counter~0 6)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,292 INFO L290 TraceCheckUtils]: 118: Hoare triple {25502#(<= ~counter~0 6)} ~cond := #in~cond; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,293 INFO L290 TraceCheckUtils]: 119: Hoare triple {25502#(<= ~counter~0 6)} assume !(0 == ~cond); {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,293 INFO L290 TraceCheckUtils]: 120: Hoare triple {25502#(<= ~counter~0 6)} assume true; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,293 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {25502#(<= ~counter~0 6)} {25502#(<= ~counter~0 6)} #87#return; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,293 INFO L290 TraceCheckUtils]: 122: Hoare triple {25502#(<= ~counter~0 6)} assume !!(~r~0 >= 2 * ~b~0); {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,294 INFO L272 TraceCheckUtils]: 123: Hoare triple {25502#(<= ~counter~0 6)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,294 INFO L290 TraceCheckUtils]: 124: Hoare triple {25502#(<= ~counter~0 6)} ~cond := #in~cond; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,294 INFO L290 TraceCheckUtils]: 125: Hoare triple {25502#(<= ~counter~0 6)} assume !(0 == ~cond); {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,295 INFO L290 TraceCheckUtils]: 126: Hoare triple {25502#(<= ~counter~0 6)} assume true; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,295 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {25502#(<= ~counter~0 6)} {25502#(<= ~counter~0 6)} #89#return; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,295 INFO L290 TraceCheckUtils]: 128: Hoare triple {25502#(<= ~counter~0 6)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {25502#(<= ~counter~0 6)} is VALID [2022-04-08 11:33:20,296 INFO L290 TraceCheckUtils]: 129: Hoare triple {25502#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,296 INFO L290 TraceCheckUtils]: 130: Hoare triple {25575#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,296 INFO L272 TraceCheckUtils]: 131: Hoare triple {25575#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,297 INFO L290 TraceCheckUtils]: 132: Hoare triple {25575#(<= ~counter~0 7)} ~cond := #in~cond; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,297 INFO L290 TraceCheckUtils]: 133: Hoare triple {25575#(<= ~counter~0 7)} assume !(0 == ~cond); {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,297 INFO L290 TraceCheckUtils]: 134: Hoare triple {25575#(<= ~counter~0 7)} assume true; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,298 INFO L284 TraceCheckUtils]: 135: Hoare quadruple {25575#(<= ~counter~0 7)} {25575#(<= ~counter~0 7)} #83#return; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,298 INFO L272 TraceCheckUtils]: 136: Hoare triple {25575#(<= ~counter~0 7)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,298 INFO L290 TraceCheckUtils]: 137: Hoare triple {25575#(<= ~counter~0 7)} ~cond := #in~cond; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,299 INFO L290 TraceCheckUtils]: 138: Hoare triple {25575#(<= ~counter~0 7)} assume !(0 == ~cond); {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,299 INFO L290 TraceCheckUtils]: 139: Hoare triple {25575#(<= ~counter~0 7)} assume true; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,299 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {25575#(<= ~counter~0 7)} {25575#(<= ~counter~0 7)} #85#return; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,300 INFO L272 TraceCheckUtils]: 141: Hoare triple {25575#(<= ~counter~0 7)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,300 INFO L290 TraceCheckUtils]: 142: Hoare triple {25575#(<= ~counter~0 7)} ~cond := #in~cond; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,300 INFO L290 TraceCheckUtils]: 143: Hoare triple {25575#(<= ~counter~0 7)} assume !(0 == ~cond); {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,300 INFO L290 TraceCheckUtils]: 144: Hoare triple {25575#(<= ~counter~0 7)} assume true; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,301 INFO L284 TraceCheckUtils]: 145: Hoare quadruple {25575#(<= ~counter~0 7)} {25575#(<= ~counter~0 7)} #87#return; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,301 INFO L290 TraceCheckUtils]: 146: Hoare triple {25575#(<= ~counter~0 7)} assume !(~r~0 >= 2 * ~b~0); {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,301 INFO L290 TraceCheckUtils]: 147: Hoare triple {25575#(<= ~counter~0 7)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {25575#(<= ~counter~0 7)} is VALID [2022-04-08 11:33:20,302 INFO L290 TraceCheckUtils]: 148: Hoare triple {25575#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25633#(<= |main_#t~post6| 7)} is VALID [2022-04-08 11:33:20,302 INFO L290 TraceCheckUtils]: 149: Hoare triple {25633#(<= |main_#t~post6| 7)} assume !(#t~post6 < 50);havoc #t~post6; {25177#false} is VALID [2022-04-08 11:33:20,302 INFO L272 TraceCheckUtils]: 150: Hoare triple {25177#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25177#false} is VALID [2022-04-08 11:33:20,302 INFO L290 TraceCheckUtils]: 151: Hoare triple {25177#false} ~cond := #in~cond; {25177#false} is VALID [2022-04-08 11:33:20,302 INFO L290 TraceCheckUtils]: 152: Hoare triple {25177#false} assume 0 == ~cond; {25177#false} is VALID [2022-04-08 11:33:20,302 INFO L290 TraceCheckUtils]: 153: Hoare triple {25177#false} assume !false; {25177#false} is VALID [2022-04-08 11:33:20,303 INFO L134 CoverageAnalysis]: Checked inductivity of 1044 backedges. 44 proven. 896 refuted. 0 times theorem prover too weak. 104 trivial. 0 not checked. [2022-04-08 11:33:20,303 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:33:20,922 INFO L290 TraceCheckUtils]: 153: Hoare triple {25177#false} assume !false; {25177#false} is VALID [2022-04-08 11:33:20,922 INFO L290 TraceCheckUtils]: 152: Hoare triple {25177#false} assume 0 == ~cond; {25177#false} is VALID [2022-04-08 11:33:20,922 INFO L290 TraceCheckUtils]: 151: Hoare triple {25177#false} ~cond := #in~cond; {25177#false} is VALID [2022-04-08 11:33:20,922 INFO L272 TraceCheckUtils]: 150: Hoare triple {25177#false} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25177#false} is VALID [2022-04-08 11:33:20,922 INFO L290 TraceCheckUtils]: 149: Hoare triple {25661#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {25177#false} is VALID [2022-04-08 11:33:20,923 INFO L290 TraceCheckUtils]: 148: Hoare triple {25665#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25661#(< |main_#t~post6| 50)} is VALID [2022-04-08 11:33:20,923 INFO L290 TraceCheckUtils]: 147: Hoare triple {25665#(< ~counter~0 50)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {25665#(< ~counter~0 50)} is VALID [2022-04-08 11:33:20,923 INFO L290 TraceCheckUtils]: 146: Hoare triple {25665#(< ~counter~0 50)} assume !(~r~0 >= 2 * ~b~0); {25665#(< ~counter~0 50)} is VALID [2022-04-08 11:33:20,924 INFO L284 TraceCheckUtils]: 145: Hoare quadruple {25176#true} {25665#(< ~counter~0 50)} #87#return; {25665#(< ~counter~0 50)} is VALID [2022-04-08 11:33:20,924 INFO L290 TraceCheckUtils]: 144: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,924 INFO L290 TraceCheckUtils]: 143: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,924 INFO L290 TraceCheckUtils]: 142: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,924 INFO L272 TraceCheckUtils]: 141: Hoare triple {25665#(< ~counter~0 50)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,924 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {25176#true} {25665#(< ~counter~0 50)} #85#return; {25665#(< ~counter~0 50)} is VALID [2022-04-08 11:33:20,925 INFO L290 TraceCheckUtils]: 139: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,925 INFO L290 TraceCheckUtils]: 138: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,925 INFO L290 TraceCheckUtils]: 137: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,925 INFO L272 TraceCheckUtils]: 136: Hoare triple {25665#(< ~counter~0 50)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,925 INFO L284 TraceCheckUtils]: 135: Hoare quadruple {25176#true} {25665#(< ~counter~0 50)} #83#return; {25665#(< ~counter~0 50)} is VALID [2022-04-08 11:33:20,925 INFO L290 TraceCheckUtils]: 134: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,925 INFO L290 TraceCheckUtils]: 133: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,925 INFO L290 TraceCheckUtils]: 132: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,925 INFO L272 TraceCheckUtils]: 131: Hoare triple {25665#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,926 INFO L290 TraceCheckUtils]: 130: Hoare triple {25665#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {25665#(< ~counter~0 50)} is VALID [2022-04-08 11:33:20,927 INFO L290 TraceCheckUtils]: 129: Hoare triple {25723#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {25665#(< ~counter~0 50)} is VALID [2022-04-08 11:33:20,927 INFO L290 TraceCheckUtils]: 128: Hoare triple {25723#(< ~counter~0 49)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {25723#(< ~counter~0 49)} is VALID [2022-04-08 11:33:20,927 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {25176#true} {25723#(< ~counter~0 49)} #89#return; {25723#(< ~counter~0 49)} is VALID [2022-04-08 11:33:20,927 INFO L290 TraceCheckUtils]: 126: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,928 INFO L290 TraceCheckUtils]: 125: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,928 INFO L290 TraceCheckUtils]: 124: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,928 INFO L272 TraceCheckUtils]: 123: Hoare triple {25723#(< ~counter~0 49)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,928 INFO L290 TraceCheckUtils]: 122: Hoare triple {25723#(< ~counter~0 49)} assume !!(~r~0 >= 2 * ~b~0); {25723#(< ~counter~0 49)} is VALID [2022-04-08 11:33:20,928 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {25176#true} {25723#(< ~counter~0 49)} #87#return; {25723#(< ~counter~0 49)} is VALID [2022-04-08 11:33:20,928 INFO L290 TraceCheckUtils]: 120: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,928 INFO L290 TraceCheckUtils]: 119: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,929 INFO L290 TraceCheckUtils]: 118: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,929 INFO L272 TraceCheckUtils]: 117: Hoare triple {25723#(< ~counter~0 49)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,929 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {25176#true} {25723#(< ~counter~0 49)} #85#return; {25723#(< ~counter~0 49)} is VALID [2022-04-08 11:33:20,929 INFO L290 TraceCheckUtils]: 115: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,929 INFO L290 TraceCheckUtils]: 114: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,929 INFO L290 TraceCheckUtils]: 113: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,929 INFO L272 TraceCheckUtils]: 112: Hoare triple {25723#(< ~counter~0 49)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,930 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {25176#true} {25723#(< ~counter~0 49)} #83#return; {25723#(< ~counter~0 49)} is VALID [2022-04-08 11:33:20,930 INFO L290 TraceCheckUtils]: 110: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,930 INFO L290 TraceCheckUtils]: 109: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,930 INFO L290 TraceCheckUtils]: 108: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,930 INFO L272 TraceCheckUtils]: 107: Hoare triple {25723#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,930 INFO L290 TraceCheckUtils]: 106: Hoare triple {25723#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {25723#(< ~counter~0 49)} is VALID [2022-04-08 11:33:20,931 INFO L290 TraceCheckUtils]: 105: Hoare triple {25796#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {25723#(< ~counter~0 49)} is VALID [2022-04-08 11:33:20,931 INFO L290 TraceCheckUtils]: 104: Hoare triple {25796#(< ~counter~0 48)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {25796#(< ~counter~0 48)} is VALID [2022-04-08 11:33:20,932 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {25176#true} {25796#(< ~counter~0 48)} #81#return; {25796#(< ~counter~0 48)} is VALID [2022-04-08 11:33:20,932 INFO L290 TraceCheckUtils]: 102: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,932 INFO L290 TraceCheckUtils]: 101: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,932 INFO L290 TraceCheckUtils]: 100: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,932 INFO L272 TraceCheckUtils]: 99: Hoare triple {25796#(< ~counter~0 48)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,932 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {25176#true} {25796#(< ~counter~0 48)} #79#return; {25796#(< ~counter~0 48)} is VALID [2022-04-08 11:33:20,933 INFO L290 TraceCheckUtils]: 97: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,933 INFO L290 TraceCheckUtils]: 96: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,933 INFO L290 TraceCheckUtils]: 95: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,933 INFO L272 TraceCheckUtils]: 94: Hoare triple {25796#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,933 INFO L290 TraceCheckUtils]: 93: Hoare triple {25796#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {25796#(< ~counter~0 48)} is VALID [2022-04-08 11:33:20,934 INFO L290 TraceCheckUtils]: 92: Hoare triple {25836#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25796#(< ~counter~0 48)} is VALID [2022-04-08 11:33:20,934 INFO L290 TraceCheckUtils]: 91: Hoare triple {25836#(< ~counter~0 47)} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {25836#(< ~counter~0 47)} is VALID [2022-04-08 11:33:20,934 INFO L290 TraceCheckUtils]: 90: Hoare triple {25836#(< ~counter~0 47)} assume !(~r~0 >= 2 * ~b~0); {25836#(< ~counter~0 47)} is VALID [2022-04-08 11:33:20,935 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {25176#true} {25836#(< ~counter~0 47)} #87#return; {25836#(< ~counter~0 47)} is VALID [2022-04-08 11:33:20,935 INFO L290 TraceCheckUtils]: 88: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,935 INFO L290 TraceCheckUtils]: 87: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,935 INFO L290 TraceCheckUtils]: 86: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,935 INFO L272 TraceCheckUtils]: 85: Hoare triple {25836#(< ~counter~0 47)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,935 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {25176#true} {25836#(< ~counter~0 47)} #85#return; {25836#(< ~counter~0 47)} is VALID [2022-04-08 11:33:20,935 INFO L290 TraceCheckUtils]: 83: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,935 INFO L290 TraceCheckUtils]: 82: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,936 INFO L290 TraceCheckUtils]: 81: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,936 INFO L272 TraceCheckUtils]: 80: Hoare triple {25836#(< ~counter~0 47)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,936 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {25176#true} {25836#(< ~counter~0 47)} #83#return; {25836#(< ~counter~0 47)} is VALID [2022-04-08 11:33:20,936 INFO L290 TraceCheckUtils]: 78: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,936 INFO L290 TraceCheckUtils]: 77: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,936 INFO L290 TraceCheckUtils]: 76: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,936 INFO L272 TraceCheckUtils]: 75: Hoare triple {25836#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,941 INFO L290 TraceCheckUtils]: 74: Hoare triple {25836#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {25836#(< ~counter~0 47)} is VALID [2022-04-08 11:33:20,942 INFO L290 TraceCheckUtils]: 73: Hoare triple {25894#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {25836#(< ~counter~0 47)} is VALID [2022-04-08 11:33:20,942 INFO L290 TraceCheckUtils]: 72: Hoare triple {25894#(< ~counter~0 46)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {25894#(< ~counter~0 46)} is VALID [2022-04-08 11:33:20,943 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {25176#true} {25894#(< ~counter~0 46)} #89#return; {25894#(< ~counter~0 46)} is VALID [2022-04-08 11:33:20,943 INFO L290 TraceCheckUtils]: 70: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,943 INFO L290 TraceCheckUtils]: 69: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,943 INFO L290 TraceCheckUtils]: 68: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,943 INFO L272 TraceCheckUtils]: 67: Hoare triple {25894#(< ~counter~0 46)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,944 INFO L290 TraceCheckUtils]: 66: Hoare triple {25894#(< ~counter~0 46)} assume !!(~r~0 >= 2 * ~b~0); {25894#(< ~counter~0 46)} is VALID [2022-04-08 11:33:20,944 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {25176#true} {25894#(< ~counter~0 46)} #87#return; {25894#(< ~counter~0 46)} is VALID [2022-04-08 11:33:20,944 INFO L290 TraceCheckUtils]: 64: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,944 INFO L290 TraceCheckUtils]: 63: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,944 INFO L290 TraceCheckUtils]: 62: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,944 INFO L272 TraceCheckUtils]: 61: Hoare triple {25894#(< ~counter~0 46)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,945 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {25176#true} {25894#(< ~counter~0 46)} #85#return; {25894#(< ~counter~0 46)} is VALID [2022-04-08 11:33:20,945 INFO L290 TraceCheckUtils]: 59: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,945 INFO L290 TraceCheckUtils]: 58: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,945 INFO L290 TraceCheckUtils]: 57: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,945 INFO L272 TraceCheckUtils]: 56: Hoare triple {25894#(< ~counter~0 46)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,946 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {25176#true} {25894#(< ~counter~0 46)} #83#return; {25894#(< ~counter~0 46)} is VALID [2022-04-08 11:33:20,946 INFO L290 TraceCheckUtils]: 54: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,946 INFO L290 TraceCheckUtils]: 53: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,946 INFO L290 TraceCheckUtils]: 52: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,946 INFO L272 TraceCheckUtils]: 51: Hoare triple {25894#(< ~counter~0 46)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,946 INFO L290 TraceCheckUtils]: 50: Hoare triple {25894#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {25894#(< ~counter~0 46)} is VALID [2022-04-08 11:33:20,947 INFO L290 TraceCheckUtils]: 49: Hoare triple {25967#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {25894#(< ~counter~0 46)} is VALID [2022-04-08 11:33:20,947 INFO L290 TraceCheckUtils]: 48: Hoare triple {25967#(< ~counter~0 45)} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {25967#(< ~counter~0 45)} is VALID [2022-04-08 11:33:20,948 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {25176#true} {25967#(< ~counter~0 45)} #89#return; {25967#(< ~counter~0 45)} is VALID [2022-04-08 11:33:20,948 INFO L290 TraceCheckUtils]: 46: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,948 INFO L290 TraceCheckUtils]: 45: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,948 INFO L290 TraceCheckUtils]: 44: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,948 INFO L272 TraceCheckUtils]: 43: Hoare triple {25967#(< ~counter~0 45)} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,948 INFO L290 TraceCheckUtils]: 42: Hoare triple {25967#(< ~counter~0 45)} assume !!(~r~0 >= 2 * ~b~0); {25967#(< ~counter~0 45)} is VALID [2022-04-08 11:33:20,949 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {25176#true} {25967#(< ~counter~0 45)} #87#return; {25967#(< ~counter~0 45)} is VALID [2022-04-08 11:33:20,949 INFO L290 TraceCheckUtils]: 40: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,949 INFO L290 TraceCheckUtils]: 39: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,949 INFO L290 TraceCheckUtils]: 38: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,949 INFO L272 TraceCheckUtils]: 37: Hoare triple {25967#(< ~counter~0 45)} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,950 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {25176#true} {25967#(< ~counter~0 45)} #85#return; {25967#(< ~counter~0 45)} is VALID [2022-04-08 11:33:20,950 INFO L290 TraceCheckUtils]: 35: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,950 INFO L290 TraceCheckUtils]: 34: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,950 INFO L290 TraceCheckUtils]: 33: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,950 INFO L272 TraceCheckUtils]: 32: Hoare triple {25967#(< ~counter~0 45)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,950 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {25176#true} {25967#(< ~counter~0 45)} #83#return; {25967#(< ~counter~0 45)} is VALID [2022-04-08 11:33:20,951 INFO L290 TraceCheckUtils]: 30: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,951 INFO L290 TraceCheckUtils]: 29: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,951 INFO L290 TraceCheckUtils]: 28: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,951 INFO L272 TraceCheckUtils]: 27: Hoare triple {25967#(< ~counter~0 45)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,951 INFO L290 TraceCheckUtils]: 26: Hoare triple {25967#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {25967#(< ~counter~0 45)} is VALID [2022-04-08 11:33:20,952 INFO L290 TraceCheckUtils]: 25: Hoare triple {26040#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {25967#(< ~counter~0 45)} is VALID [2022-04-08 11:33:20,952 INFO L290 TraceCheckUtils]: 24: Hoare triple {26040#(< ~counter~0 44)} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {26040#(< ~counter~0 44)} is VALID [2022-04-08 11:33:20,953 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {25176#true} {26040#(< ~counter~0 44)} #81#return; {26040#(< ~counter~0 44)} is VALID [2022-04-08 11:33:20,953 INFO L290 TraceCheckUtils]: 22: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,953 INFO L290 TraceCheckUtils]: 21: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,953 INFO L290 TraceCheckUtils]: 20: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,953 INFO L272 TraceCheckUtils]: 19: Hoare triple {26040#(< ~counter~0 44)} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,953 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {25176#true} {26040#(< ~counter~0 44)} #79#return; {26040#(< ~counter~0 44)} is VALID [2022-04-08 11:33:20,953 INFO L290 TraceCheckUtils]: 17: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,953 INFO L290 TraceCheckUtils]: 16: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,954 INFO L290 TraceCheckUtils]: 15: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,954 INFO L272 TraceCheckUtils]: 14: Hoare triple {26040#(< ~counter~0 44)} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,954 INFO L290 TraceCheckUtils]: 13: Hoare triple {26040#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {26040#(< ~counter~0 44)} is VALID [2022-04-08 11:33:20,954 INFO L290 TraceCheckUtils]: 12: Hoare triple {26080#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26040#(< ~counter~0 44)} is VALID [2022-04-08 11:33:20,955 INFO L290 TraceCheckUtils]: 11: Hoare triple {26080#(< ~counter~0 43)} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {26080#(< ~counter~0 43)} is VALID [2022-04-08 11:33:20,955 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25176#true} {26080#(< ~counter~0 43)} #77#return; {26080#(< ~counter~0 43)} is VALID [2022-04-08 11:33:20,955 INFO L290 TraceCheckUtils]: 9: Hoare triple {25176#true} assume true; {25176#true} is VALID [2022-04-08 11:33:20,955 INFO L290 TraceCheckUtils]: 8: Hoare triple {25176#true} assume !(0 == ~cond); {25176#true} is VALID [2022-04-08 11:33:20,955 INFO L290 TraceCheckUtils]: 7: Hoare triple {25176#true} ~cond := #in~cond; {25176#true} is VALID [2022-04-08 11:33:20,955 INFO L272 TraceCheckUtils]: 6: Hoare triple {26080#(< ~counter~0 43)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {25176#true} is VALID [2022-04-08 11:33:20,956 INFO L290 TraceCheckUtils]: 5: Hoare triple {26080#(< ~counter~0 43)} 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; {26080#(< ~counter~0 43)} is VALID [2022-04-08 11:33:20,956 INFO L272 TraceCheckUtils]: 4: Hoare triple {26080#(< ~counter~0 43)} call #t~ret8 := main(); {26080#(< ~counter~0 43)} is VALID [2022-04-08 11:33:20,956 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26080#(< ~counter~0 43)} {25176#true} #93#return; {26080#(< ~counter~0 43)} is VALID [2022-04-08 11:33:20,957 INFO L290 TraceCheckUtils]: 2: Hoare triple {26080#(< ~counter~0 43)} assume true; {26080#(< ~counter~0 43)} is VALID [2022-04-08 11:33:20,957 INFO L290 TraceCheckUtils]: 1: Hoare triple {25176#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; {26080#(< ~counter~0 43)} is VALID [2022-04-08 11:33:20,957 INFO L272 TraceCheckUtils]: 0: Hoare triple {25176#true} call ULTIMATE.init(); {25176#true} is VALID [2022-04-08 11:33:20,958 INFO L134 CoverageAnalysis]: Checked inductivity of 1044 backedges. 44 proven. 76 refuted. 0 times theorem prover too weak. 924 trivial. 0 not checked. [2022-04-08 11:33:20,958 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:33:20,958 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [45377112] [2022-04-08 11:33:20,958 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:33:20,958 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1058193382] [2022-04-08 11:33:20,958 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1058193382] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:33:20,958 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:33:20,958 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-08 11:33:20,958 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:33:20,958 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1876824586] [2022-04-08 11:33:20,959 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1876824586] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:33:20,959 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:33:20,959 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 11:33:20,959 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1758157840] [2022-04-08 11:33:20,959 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:33:20,959 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.363636363636363) internal successors, (59), 10 states have internal predecessors, (59), 10 states have call successors, (26), 10 states have call predecessors, (26), 8 states have return successors, (24), 8 states have call predecessors, (24), 9 states have call successors, (24) Word has length 154 [2022-04-08 11:33:20,959 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:33:20,959 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 5.363636363636363) internal successors, (59), 10 states have internal predecessors, (59), 10 states have call successors, (26), 10 states have call predecessors, (26), 8 states have return successors, (24), 8 states have call predecessors, (24), 9 states have call successors, (24) [2022-04-08 11:33:21,038 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:33:21,038 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 11:33:21,038 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:33:21,038 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 11:33:21,039 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-08 11:33:21,039 INFO L87 Difference]: Start difference. First operand 287 states and 328 transitions. Second operand has 11 states, 11 states have (on average 5.363636363636363) internal successors, (59), 10 states have internal predecessors, (59), 10 states have call successors, (26), 10 states have call predecessors, (26), 8 states have return successors, (24), 8 states have call predecessors, (24), 9 states have call successors, (24) [2022-04-08 11:33:22,143 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:33:22,143 INFO L93 Difference]: Finished difference Result 362 states and 414 transitions. [2022-04-08 11:33:22,143 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 11:33:22,144 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 5.363636363636363) internal successors, (59), 10 states have internal predecessors, (59), 10 states have call successors, (26), 10 states have call predecessors, (26), 8 states have return successors, (24), 8 states have call predecessors, (24), 9 states have call successors, (24) Word has length 154 [2022-04-08 11:33:22,144 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:33:22,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.363636363636363) internal successors, (59), 10 states have internal predecessors, (59), 10 states have call successors, (26), 10 states have call predecessors, (26), 8 states have return successors, (24), 8 states have call predecessors, (24), 9 states have call successors, (24) [2022-04-08 11:33:22,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 181 transitions. [2022-04-08 11:33:22,146 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 5.363636363636363) internal successors, (59), 10 states have internal predecessors, (59), 10 states have call successors, (26), 10 states have call predecessors, (26), 8 states have return successors, (24), 8 states have call predecessors, (24), 9 states have call successors, (24) [2022-04-08 11:33:22,148 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 181 transitions. [2022-04-08 11:33:22,148 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 181 transitions. [2022-04-08 11:33:22,280 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 181 edges. 181 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:33:22,286 INFO L225 Difference]: With dead ends: 362 [2022-04-08 11:33:22,287 INFO L226 Difference]: Without dead ends: 355 [2022-04-08 11:33:22,287 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 311 GetRequests, 289 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=225, Invalid=327, Unknown=0, NotChecked=0, Total=552 [2022-04-08 11:33:22,287 INFO L913 BasicCegarLoop]: 71 mSDtfsCounter, 63 mSDsluCounter, 187 mSDsCounter, 0 mSdLazyCounter, 128 mSolverCounterSat, 60 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 258 SdHoareTripleChecker+Invalid, 188 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 60 IncrementalHoareTripleChecker+Valid, 128 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 11:33:22,287 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 258 Invalid, 188 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [60 Valid, 128 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 11:33:22,288 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 355 states. [2022-04-08 11:33:22,750 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 355 to 344. [2022-04-08 11:33:22,750 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:33:22,750 INFO L82 GeneralOperation]: Start isEquivalent. First operand 355 states. Second operand has 344 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 45 states have call predecessors, (77), 43 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) [2022-04-08 11:33:22,753 INFO L74 IsIncluded]: Start isIncluded. First operand 355 states. Second operand has 344 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 45 states have call predecessors, (77), 43 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) [2022-04-08 11:33:22,753 INFO L87 Difference]: Start difference. First operand 355 states. Second operand has 344 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 45 states have call predecessors, (77), 43 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) [2022-04-08 11:33:22,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:33:22,758 INFO L93 Difference]: Finished difference Result 355 states and 406 transitions. [2022-04-08 11:33:22,758 INFO L276 IsEmpty]: Start isEmpty. Operand 355 states and 406 transitions. [2022-04-08 11:33:22,759 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:33:22,759 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:33:22,759 INFO L74 IsIncluded]: Start isIncluded. First operand has 344 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 45 states have call predecessors, (77), 43 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) Second operand 355 states. [2022-04-08 11:33:22,759 INFO L87 Difference]: Start difference. First operand has 344 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 45 states have call predecessors, (77), 43 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) Second operand 355 states. [2022-04-08 11:33:22,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:33:22,764 INFO L93 Difference]: Finished difference Result 355 states and 406 transitions. [2022-04-08 11:33:22,764 INFO L276 IsEmpty]: Start isEmpty. Operand 355 states and 406 transitions. [2022-04-08 11:33:22,765 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:33:22,765 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:33:22,765 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:33:22,765 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:33:22,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 344 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 45 states have call predecessors, (77), 43 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) [2022-04-08 11:33:22,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 344 states to 344 states and 395 transitions. [2022-04-08 11:33:22,772 INFO L78 Accepts]: Start accepts. Automaton has 344 states and 395 transitions. Word has length 154 [2022-04-08 11:33:22,772 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:33:22,772 INFO L478 AbstractCegarLoop]: Abstraction has 344 states and 395 transitions. [2022-04-08 11:33:22,772 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 5.363636363636363) internal successors, (59), 10 states have internal predecessors, (59), 10 states have call successors, (26), 10 states have call predecessors, (26), 8 states have return successors, (24), 8 states have call predecessors, (24), 9 states have call successors, (24) [2022-04-08 11:33:22,772 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 344 states and 395 transitions. [2022-04-08 11:33:23,395 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 395 edges. 395 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:33:23,396 INFO L276 IsEmpty]: Start isEmpty. Operand 344 states and 395 transitions. [2022-04-08 11:33:23,397 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 160 [2022-04-08 11:33:23,397 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:33:23,397 INFO L499 BasicCegarLoop]: trace histogram [24, 23, 23, 5, 5, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:33:23,432 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Ended with exit code 0 [2022-04-08 11:33:23,598 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-04-08 11:33:23,598 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:33:23,598 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:33:23,598 INFO L85 PathProgramCache]: Analyzing trace with hash -1775621107, now seen corresponding path program 3 times [2022-04-08 11:33:23,598 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:33:23,598 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [600733039] [2022-04-08 11:34:10,553 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:34:10,553 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:34:10,553 INFO L85 PathProgramCache]: Analyzing trace with hash -1775621107, now seen corresponding path program 4 times [2022-04-08 11:34:10,553 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:34:10,553 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1464793766] [2022-04-08 11:34:10,553 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:34:10,553 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:34:10,565 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:34:10,565 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1109757254] [2022-04-08 11:34:10,565 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 11:34:10,565 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:34:10,565 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:34:10,566 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:34:10,567 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-08 11:34:10,645 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 11:34:10,645 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:34:10,646 INFO L263 TraceCheckSpWp]: Trace formula consists of 322 conjuncts, 51 conjunts are in the unsatisfiable core [2022-04-08 11:34:10,671 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:34:10,673 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:34:41,460 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 11:34:43,921 INFO L272 TraceCheckUtils]: 0: Hoare triple {28249#true} call ULTIMATE.init(); {28249#true} is VALID [2022-04-08 11:34:43,922 INFO L290 TraceCheckUtils]: 1: Hoare triple {28249#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; {28249#true} is VALID [2022-04-08 11:34:43,922 INFO L290 TraceCheckUtils]: 2: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,922 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28249#true} {28249#true} #93#return; {28249#true} is VALID [2022-04-08 11:34:43,922 INFO L272 TraceCheckUtils]: 4: Hoare triple {28249#true} call #t~ret8 := main(); {28249#true} is VALID [2022-04-08 11:34:43,922 INFO L290 TraceCheckUtils]: 5: Hoare triple {28249#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; {28249#true} is VALID [2022-04-08 11:34:43,922 INFO L272 TraceCheckUtils]: 6: Hoare triple {28249#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,922 INFO L290 TraceCheckUtils]: 7: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,922 INFO L290 TraceCheckUtils]: 8: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,922 INFO L290 TraceCheckUtils]: 9: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,922 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28249#true} {28249#true} #77#return; {28249#true} is VALID [2022-04-08 11:34:43,923 INFO L290 TraceCheckUtils]: 11: Hoare triple {28249#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {28287#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,923 INFO L290 TraceCheckUtils]: 12: Hoare triple {28287#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28287#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,923 INFO L290 TraceCheckUtils]: 13: Hoare triple {28287#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {28287#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,923 INFO L272 TraceCheckUtils]: 14: Hoare triple {28287#(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)); {28249#true} is VALID [2022-04-08 11:34:43,924 INFO L290 TraceCheckUtils]: 15: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,924 INFO L290 TraceCheckUtils]: 16: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,924 INFO L290 TraceCheckUtils]: 17: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,924 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {28249#true} {28287#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {28287#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,924 INFO L272 TraceCheckUtils]: 19: Hoare triple {28287#(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)); {28249#true} is VALID [2022-04-08 11:34:43,924 INFO L290 TraceCheckUtils]: 20: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,924 INFO L290 TraceCheckUtils]: 21: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,924 INFO L290 TraceCheckUtils]: 22: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,925 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {28249#true} {28287#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {28287#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,925 INFO L290 TraceCheckUtils]: 24: Hoare triple {28287#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,926 INFO L290 TraceCheckUtils]: 25: Hoare triple {28327#(and (= 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; {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,926 INFO L290 TraceCheckUtils]: 26: Hoare triple {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,926 INFO L272 TraceCheckUtils]: 27: Hoare triple {28327#(and (= 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)); {28249#true} is VALID [2022-04-08 11:34:43,926 INFO L290 TraceCheckUtils]: 28: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,926 INFO L290 TraceCheckUtils]: 29: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,926 INFO L290 TraceCheckUtils]: 30: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,927 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28249#true} {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #83#return; {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,927 INFO L272 TraceCheckUtils]: 32: Hoare triple {28327#(and (= 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)); {28249#true} is VALID [2022-04-08 11:34:43,927 INFO L290 TraceCheckUtils]: 33: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,927 INFO L290 TraceCheckUtils]: 34: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,927 INFO L290 TraceCheckUtils]: 35: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,928 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {28249#true} {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #85#return; {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,928 INFO L272 TraceCheckUtils]: 37: Hoare triple {28327#(and (= 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)); {28249#true} is VALID [2022-04-08 11:34:43,928 INFO L290 TraceCheckUtils]: 38: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,928 INFO L290 TraceCheckUtils]: 39: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,928 INFO L290 TraceCheckUtils]: 40: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,928 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {28249#true} {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,929 INFO L290 TraceCheckUtils]: 42: Hoare triple {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,929 INFO L272 TraceCheckUtils]: 43: Hoare triple {28327#(and (= 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)); {28249#true} is VALID [2022-04-08 11:34:43,929 INFO L290 TraceCheckUtils]: 44: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,929 INFO L290 TraceCheckUtils]: 45: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,929 INFO L290 TraceCheckUtils]: 46: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,929 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {28249#true} {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {28327#(and (= main_~x~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,930 INFO L290 TraceCheckUtils]: 48: Hoare triple {28327#(and (= 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; {28400#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,931 INFO L290 TraceCheckUtils]: 49: Hoare triple {28400#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28400#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,931 INFO L290 TraceCheckUtils]: 50: Hoare triple {28400#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {28400#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,931 INFO L272 TraceCheckUtils]: 51: Hoare triple {28400#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,932 INFO L290 TraceCheckUtils]: 52: Hoare triple {28249#true} ~cond := #in~cond; {28413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:34:43,932 INFO L290 TraceCheckUtils]: 53: Hoare triple {28413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:34:43,932 INFO L290 TraceCheckUtils]: 54: Hoare triple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:34:43,933 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} {28400#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0))} #83#return; {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:34:43,933 INFO L272 TraceCheckUtils]: 56: Hoare triple {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= 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)); {28249#true} is VALID [2022-04-08 11:34:43,933 INFO L290 TraceCheckUtils]: 57: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,933 INFO L290 TraceCheckUtils]: 58: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,933 INFO L290 TraceCheckUtils]: 59: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,934 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {28249#true} {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #85#return; {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:34:43,934 INFO L272 TraceCheckUtils]: 61: Hoare triple {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,934 INFO L290 TraceCheckUtils]: 62: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,934 INFO L290 TraceCheckUtils]: 63: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,934 INFO L290 TraceCheckUtils]: 64: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,934 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {28249#true} {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #87#return; {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:34:43,935 INFO L290 TraceCheckUtils]: 66: Hoare triple {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} assume !!(~r~0 >= 2 * ~b~0); {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:34:43,935 INFO L272 TraceCheckUtils]: 67: Hoare triple {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,935 INFO L290 TraceCheckUtils]: 68: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,936 INFO L290 TraceCheckUtils]: 69: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,936 INFO L290 TraceCheckUtils]: 70: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,936 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28249#true} {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} #89#return; {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} is VALID [2022-04-08 11:34:43,940 INFO L290 TraceCheckUtils]: 72: Hoare triple {28424#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= main_~b~0 (* main_~y~0 2)) (= main_~q~0 0) (= main_~b~0 (* main_~a~0 main_~y~0)))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,941 INFO L290 TraceCheckUtils]: 73: Hoare triple {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,941 INFO L290 TraceCheckUtils]: 74: Hoare triple {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,942 INFO L272 TraceCheckUtils]: 75: Hoare triple {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,942 INFO L290 TraceCheckUtils]: 76: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,942 INFO L290 TraceCheckUtils]: 77: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,942 INFO L290 TraceCheckUtils]: 78: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,942 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {28249#true} {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} #83#return; {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,942 INFO L272 TraceCheckUtils]: 80: Hoare triple {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,942 INFO L290 TraceCheckUtils]: 81: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,942 INFO L290 TraceCheckUtils]: 82: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,943 INFO L290 TraceCheckUtils]: 83: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,943 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {28249#true} {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} #85#return; {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,943 INFO L272 TraceCheckUtils]: 85: Hoare triple {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,943 INFO L290 TraceCheckUtils]: 86: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,943 INFO L290 TraceCheckUtils]: 87: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,943 INFO L290 TraceCheckUtils]: 88: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,944 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {28249#true} {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} #87#return; {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,944 INFO L290 TraceCheckUtils]: 90: Hoare triple {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} assume !(~r~0 >= 2 * ~b~0); {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} is VALID [2022-04-08 11:34:43,946 INFO L290 TraceCheckUtils]: 91: Hoare triple {28476#(and (= (mod main_~a~0 2) 0) (= main_~x~0 main_~r~0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {28534#(and (= (mod main_~a~0 2) 0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~a~0 main_~q~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0))} is VALID [2022-04-08 11:34:43,947 INFO L290 TraceCheckUtils]: 92: Hoare triple {28534#(and (= (mod main_~a~0 2) 0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~a~0 main_~q~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28534#(and (= (mod main_~a~0 2) 0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~a~0 main_~q~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0))} is VALID [2022-04-08 11:34:43,947 INFO L290 TraceCheckUtils]: 93: Hoare triple {28534#(and (= (mod main_~a~0 2) 0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~a~0 main_~q~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0))} assume !!(#t~post6 < 50);havoc #t~post6; {28534#(and (= (mod main_~a~0 2) 0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~a~0 main_~q~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0))} is VALID [2022-04-08 11:34:43,947 INFO L272 TraceCheckUtils]: 94: Hoare triple {28534#(and (= (mod main_~a~0 2) 0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~a~0 main_~q~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,948 INFO L290 TraceCheckUtils]: 95: Hoare triple {28249#true} ~cond := #in~cond; {28413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:34:43,948 INFO L290 TraceCheckUtils]: 96: Hoare triple {28413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:34:43,948 INFO L290 TraceCheckUtils]: 97: Hoare triple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:34:43,950 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} {28534#(and (= (mod main_~a~0 2) 0) (= (mod (div (- main_~a~0) (- 2)) 2) 0) (= main_~b~0 (* main_~y~0 4)) (= (* (div (- main_~a~0) (- 2)) main_~y~0) (* main_~y~0 2)) (= main_~a~0 main_~q~0) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~r~0))} #79#return; {28556#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,950 INFO L272 TraceCheckUtils]: 99: Hoare triple {28556#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,950 INFO L290 TraceCheckUtils]: 100: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,950 INFO L290 TraceCheckUtils]: 101: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,950 INFO L290 TraceCheckUtils]: 102: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,951 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {28249#true} {28556#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} #81#return; {28556#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,951 INFO L290 TraceCheckUtils]: 104: Hoare triple {28556#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,952 INFO L290 TraceCheckUtils]: 105: Hoare triple {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,952 INFO L290 TraceCheckUtils]: 106: Hoare triple {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} assume !!(#t~post7 < 50);havoc #t~post7; {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,952 INFO L272 TraceCheckUtils]: 107: Hoare triple {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,952 INFO L290 TraceCheckUtils]: 108: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,952 INFO L290 TraceCheckUtils]: 109: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,952 INFO L290 TraceCheckUtils]: 110: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,953 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {28249#true} {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} #83#return; {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,953 INFO L272 TraceCheckUtils]: 112: Hoare triple {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,953 INFO L290 TraceCheckUtils]: 113: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,953 INFO L290 TraceCheckUtils]: 114: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,953 INFO L290 TraceCheckUtils]: 115: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,954 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {28249#true} {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} #85#return; {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,954 INFO L272 TraceCheckUtils]: 117: Hoare triple {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,954 INFO L290 TraceCheckUtils]: 118: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,954 INFO L290 TraceCheckUtils]: 119: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,954 INFO L290 TraceCheckUtils]: 120: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,954 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {28249#true} {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} #87#return; {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,955 INFO L290 TraceCheckUtils]: 122: Hoare triple {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} assume !!(~r~0 >= 2 * ~b~0); {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,955 INFO L272 TraceCheckUtils]: 123: Hoare triple {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,955 INFO L290 TraceCheckUtils]: 124: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,955 INFO L290 TraceCheckUtils]: 125: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,955 INFO L290 TraceCheckUtils]: 126: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,956 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {28249#true} {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} #89#return; {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,957 INFO L290 TraceCheckUtils]: 128: Hoare triple {28575#(and (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,958 INFO L290 TraceCheckUtils]: 129: Hoare triple {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,958 INFO L290 TraceCheckUtils]: 130: Hoare triple {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} assume !!(#t~post7 < 50);havoc #t~post7; {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,958 INFO L272 TraceCheckUtils]: 131: Hoare triple {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,958 INFO L290 TraceCheckUtils]: 132: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,958 INFO L290 TraceCheckUtils]: 133: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,959 INFO L290 TraceCheckUtils]: 134: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,959 INFO L284 TraceCheckUtils]: 135: Hoare quadruple {28249#true} {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} #83#return; {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,959 INFO L272 TraceCheckUtils]: 136: Hoare triple {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,959 INFO L290 TraceCheckUtils]: 137: Hoare triple {28249#true} ~cond := #in~cond; {28413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:34:43,960 INFO L290 TraceCheckUtils]: 138: Hoare triple {28413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:34:43,960 INFO L290 TraceCheckUtils]: 139: Hoare triple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:34:43,961 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} #85#return; {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,961 INFO L272 TraceCheckUtils]: 141: Hoare triple {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,961 INFO L290 TraceCheckUtils]: 142: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:34:43,961 INFO L290 TraceCheckUtils]: 143: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:34:43,962 INFO L290 TraceCheckUtils]: 144: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:34:43,962 INFO L284 TraceCheckUtils]: 145: Hoare quadruple {28249#true} {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} #87#return; {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,963 INFO L290 TraceCheckUtils]: 146: Hoare triple {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} assume !(~r~0 >= 2 * ~b~0); {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} is VALID [2022-04-08 11:34:43,968 INFO L290 TraceCheckUtils]: 147: Hoare triple {28648#(and (= (mod main_~a~0 2) 0) (= main_~b~0 (* main_~y~0 2)) (= main_~x~0 (+ main_~r~0 (* main_~y~0 4))) (= (mod (div (- main_~q~0) (- 2)) 2) 0) (= (* main_~y~0 (div (* (- 1) main_~q~0) (- 2))) (* main_~y~0 2)) (= (mod main_~q~0 2) 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {28706#(and (= (mod main_~a~0 2) 0) (= (* main_~y~0 2) (* main_~y~0 (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)))) (= main_~r~0 (+ (* main_~y~0 (- 4)) main_~x~0 (* (- 1) main_~b~0))) (= main_~b~0 (* main_~y~0 2)) (= (mod (+ main_~a~0 main_~q~0) 2) 0) (= (mod (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)) 2) 0))} is VALID [2022-04-08 11:34:43,968 INFO L290 TraceCheckUtils]: 148: Hoare triple {28706#(and (= (mod main_~a~0 2) 0) (= (* main_~y~0 2) (* main_~y~0 (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)))) (= main_~r~0 (+ (* main_~y~0 (- 4)) main_~x~0 (* (- 1) main_~b~0))) (= main_~b~0 (* main_~y~0 2)) (= (mod (+ main_~a~0 main_~q~0) 2) 0) (= (mod (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)) 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28706#(and (= (mod main_~a~0 2) 0) (= (* main_~y~0 2) (* main_~y~0 (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)))) (= main_~r~0 (+ (* main_~y~0 (- 4)) main_~x~0 (* (- 1) main_~b~0))) (= main_~b~0 (* main_~y~0 2)) (= (mod (+ main_~a~0 main_~q~0) 2) 0) (= (mod (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)) 2) 0))} is VALID [2022-04-08 11:34:43,969 INFO L290 TraceCheckUtils]: 149: Hoare triple {28706#(and (= (mod main_~a~0 2) 0) (= (* main_~y~0 2) (* main_~y~0 (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)))) (= main_~r~0 (+ (* main_~y~0 (- 4)) main_~x~0 (* (- 1) main_~b~0))) (= main_~b~0 (* main_~y~0 2)) (= (mod (+ main_~a~0 main_~q~0) 2) 0) (= (mod (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)) 2) 0))} assume !!(#t~post6 < 50);havoc #t~post6; {28706#(and (= (mod main_~a~0 2) 0) (= (* main_~y~0 2) (* main_~y~0 (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)))) (= main_~r~0 (+ (* main_~y~0 (- 4)) main_~x~0 (* (- 1) main_~b~0))) (= main_~b~0 (* main_~y~0 2)) (= (mod (+ main_~a~0 main_~q~0) 2) 0) (= (mod (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)) 2) 0))} is VALID [2022-04-08 11:34:43,969 INFO L272 TraceCheckUtils]: 150: Hoare triple {28706#(and (= (mod main_~a~0 2) 0) (= (* main_~y~0 2) (* main_~y~0 (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)))) (= main_~r~0 (+ (* main_~y~0 (- 4)) main_~x~0 (* (- 1) main_~b~0))) (= main_~b~0 (* main_~y~0 2)) (= (mod (+ main_~a~0 main_~q~0) 2) 0) (= (mod (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)) 2) 0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:34:43,969 INFO L290 TraceCheckUtils]: 151: Hoare triple {28249#true} ~cond := #in~cond; {28413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:34:43,969 INFO L290 TraceCheckUtils]: 152: Hoare triple {28413#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:34:43,970 INFO L290 TraceCheckUtils]: 153: Hoare triple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:34:43,980 INFO L284 TraceCheckUtils]: 154: Hoare quadruple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} {28706#(and (= (mod main_~a~0 2) 0) (= (* main_~y~0 2) (* main_~y~0 (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)))) (= main_~r~0 (+ (* main_~y~0 (- 4)) main_~x~0 (* (- 1) main_~b~0))) (= main_~b~0 (* main_~y~0 2)) (= (mod (+ main_~a~0 main_~q~0) 2) 0) (= (mod (div (+ main_~a~0 (* (- 1) main_~q~0)) (- 2)) 2) 0))} #79#return; {28728#(and (= (+ main_~r~0 (* main_~y~0 6)) main_~x~0) (= (mod main_~q~0 2) 0) (= (* (div (+ (* (div (+ (div (+ main_~r~0 (* (- 1) main_~x~0)) (- 2)) (* (- 2) main_~y~0)) main_~y~0) 2) (* (- 1) main_~q~0)) (- 2)) main_~y~0) (* main_~y~0 2)))} is VALID [2022-04-08 11:34:43,987 INFO L272 TraceCheckUtils]: 155: Hoare triple {28728#(and (= (+ main_~r~0 (* main_~y~0 6)) main_~x~0) (= (mod main_~q~0 2) 0) (= (* (div (+ (* (div (+ (div (+ main_~r~0 (* (- 1) main_~x~0)) (- 2)) (* (- 2) main_~y~0)) main_~y~0) 2) (* (- 1) main_~q~0)) (- 2)) main_~y~0) (* main_~y~0 2)))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28732#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:34:43,987 INFO L290 TraceCheckUtils]: 156: Hoare triple {28732#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28736#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:34:43,988 INFO L290 TraceCheckUtils]: 157: Hoare triple {28736#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {28250#false} is VALID [2022-04-08 11:34:43,988 INFO L290 TraceCheckUtils]: 158: Hoare triple {28250#false} assume !false; {28250#false} is VALID [2022-04-08 11:34:43,989 INFO L134 CoverageAnalysis]: Checked inductivity of 1138 backedges. 207 proven. 147 refuted. 0 times theorem prover too weak. 784 trivial. 0 not checked. [2022-04-08 11:34:43,989 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:35:02,876 INFO L290 TraceCheckUtils]: 158: Hoare triple {28250#false} assume !false; {28250#false} is VALID [2022-04-08 11:35:02,876 INFO L290 TraceCheckUtils]: 157: Hoare triple {28736#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {28250#false} is VALID [2022-04-08 11:35:02,877 INFO L290 TraceCheckUtils]: 156: Hoare triple {28732#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28736#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:35:02,877 INFO L272 TraceCheckUtils]: 155: Hoare triple {28752#(= (+ (* 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)); {28732#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:35:02,878 INFO L284 TraceCheckUtils]: 154: Hoare quadruple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #79#return; {28752#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-08 11:35:02,878 INFO L290 TraceCheckUtils]: 153: Hoare triple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:35:02,879 INFO L290 TraceCheckUtils]: 152: Hoare triple {28766#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:35:02,879 INFO L290 TraceCheckUtils]: 151: Hoare triple {28249#true} ~cond := #in~cond; {28766#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:35:02,879 INFO L272 TraceCheckUtils]: 150: Hoare triple {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,879 INFO L290 TraceCheckUtils]: 149: Hoare triple {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} assume !!(#t~post6 < 50);havoc #t~post6; {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:35:02,880 INFO L290 TraceCheckUtils]: 148: Hoare triple {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:35:02,889 INFO L290 TraceCheckUtils]: 147: Hoare triple {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:35:02,889 INFO L290 TraceCheckUtils]: 146: Hoare triple {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} assume !(~r~0 >= 2 * ~b~0); {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:35:02,890 INFO L284 TraceCheckUtils]: 145: Hoare quadruple {28249#true} {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} #87#return; {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:35:02,890 INFO L290 TraceCheckUtils]: 144: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,890 INFO L290 TraceCheckUtils]: 143: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,890 INFO L290 TraceCheckUtils]: 142: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,890 INFO L272 TraceCheckUtils]: 141: Hoare triple {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,891 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} {28249#true} #85#return; {28756#(or (= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0) (not (= main_~b~0 (* main_~a~0 main_~y~0))))} is VALID [2022-04-08 11:35:02,891 INFO L290 TraceCheckUtils]: 139: Hoare triple {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:35:02,891 INFO L290 TraceCheckUtils]: 138: Hoare triple {28766#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {28417#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:35:02,892 INFO L290 TraceCheckUtils]: 137: Hoare triple {28249#true} ~cond := #in~cond; {28766#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:35:02,892 INFO L272 TraceCheckUtils]: 136: Hoare triple {28249#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L284 TraceCheckUtils]: 135: Hoare quadruple {28249#true} {28249#true} #83#return; {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L290 TraceCheckUtils]: 134: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L290 TraceCheckUtils]: 133: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L290 TraceCheckUtils]: 132: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L272 TraceCheckUtils]: 131: Hoare triple {28249#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L290 TraceCheckUtils]: 130: Hoare triple {28249#true} assume !!(#t~post7 < 50);havoc #t~post7; {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L290 TraceCheckUtils]: 129: Hoare triple {28249#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L290 TraceCheckUtils]: 128: Hoare triple {28249#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {28249#true} {28249#true} #89#return; {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L290 TraceCheckUtils]: 126: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L290 TraceCheckUtils]: 125: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,892 INFO L290 TraceCheckUtils]: 124: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L272 TraceCheckUtils]: 123: Hoare triple {28249#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L290 TraceCheckUtils]: 122: Hoare triple {28249#true} assume !!(~r~0 >= 2 * ~b~0); {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {28249#true} {28249#true} #87#return; {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L290 TraceCheckUtils]: 120: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L290 TraceCheckUtils]: 119: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L290 TraceCheckUtils]: 118: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L272 TraceCheckUtils]: 117: Hoare triple {28249#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {28249#true} {28249#true} #85#return; {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L290 TraceCheckUtils]: 115: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L290 TraceCheckUtils]: 114: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L290 TraceCheckUtils]: 113: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L272 TraceCheckUtils]: 112: Hoare triple {28249#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {28249#true} {28249#true} #83#return; {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L290 TraceCheckUtils]: 110: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,893 INFO L290 TraceCheckUtils]: 109: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L290 TraceCheckUtils]: 108: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L272 TraceCheckUtils]: 107: Hoare triple {28249#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L290 TraceCheckUtils]: 106: Hoare triple {28249#true} assume !!(#t~post7 < 50);havoc #t~post7; {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L290 TraceCheckUtils]: 105: Hoare triple {28249#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L290 TraceCheckUtils]: 104: Hoare triple {28249#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {28249#true} {28249#true} #81#return; {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L290 TraceCheckUtils]: 102: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L290 TraceCheckUtils]: 101: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L290 TraceCheckUtils]: 100: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L272 TraceCheckUtils]: 99: Hoare triple {28249#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L284 TraceCheckUtils]: 98: Hoare quadruple {28249#true} {28249#true} #79#return; {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L290 TraceCheckUtils]: 97: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L290 TraceCheckUtils]: 96: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L290 TraceCheckUtils]: 95: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,894 INFO L272 TraceCheckUtils]: 94: Hoare triple {28249#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L290 TraceCheckUtils]: 93: Hoare triple {28249#true} assume !!(#t~post6 < 50);havoc #t~post6; {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L290 TraceCheckUtils]: 92: Hoare triple {28249#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L290 TraceCheckUtils]: 91: Hoare triple {28249#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L290 TraceCheckUtils]: 90: Hoare triple {28249#true} assume !(~r~0 >= 2 * ~b~0); {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {28249#true} {28249#true} #87#return; {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L290 TraceCheckUtils]: 88: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L290 TraceCheckUtils]: 87: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L290 TraceCheckUtils]: 86: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L272 TraceCheckUtils]: 85: Hoare triple {28249#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {28249#true} {28249#true} #85#return; {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L290 TraceCheckUtils]: 83: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L290 TraceCheckUtils]: 82: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L290 TraceCheckUtils]: 81: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L272 TraceCheckUtils]: 80: Hoare triple {28249#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {28249#true} {28249#true} #83#return; {28249#true} is VALID [2022-04-08 11:35:02,895 INFO L290 TraceCheckUtils]: 78: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L290 TraceCheckUtils]: 77: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L290 TraceCheckUtils]: 76: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L272 TraceCheckUtils]: 75: Hoare triple {28249#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L290 TraceCheckUtils]: 74: Hoare triple {28249#true} assume !!(#t~post7 < 50);havoc #t~post7; {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L290 TraceCheckUtils]: 73: Hoare triple {28249#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L290 TraceCheckUtils]: 72: Hoare triple {28249#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {28249#true} {28249#true} #89#return; {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L290 TraceCheckUtils]: 70: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L290 TraceCheckUtils]: 69: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L290 TraceCheckUtils]: 68: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L272 TraceCheckUtils]: 67: Hoare triple {28249#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L290 TraceCheckUtils]: 66: Hoare triple {28249#true} assume !!(~r~0 >= 2 * ~b~0); {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {28249#true} {28249#true} #87#return; {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L290 TraceCheckUtils]: 64: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,896 INFO L290 TraceCheckUtils]: 63: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L290 TraceCheckUtils]: 62: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L272 TraceCheckUtils]: 61: Hoare triple {28249#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {28249#true} {28249#true} #85#return; {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L290 TraceCheckUtils]: 59: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L290 TraceCheckUtils]: 58: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L290 TraceCheckUtils]: 57: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L272 TraceCheckUtils]: 56: Hoare triple {28249#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {28249#true} {28249#true} #83#return; {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L290 TraceCheckUtils]: 54: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L290 TraceCheckUtils]: 53: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L290 TraceCheckUtils]: 52: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L272 TraceCheckUtils]: 51: Hoare triple {28249#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,897 INFO L290 TraceCheckUtils]: 50: Hoare triple {28249#true} assume !!(#t~post7 < 50);havoc #t~post7; {28249#true} is VALID [2022-04-08 11:35:02,904 INFO L290 TraceCheckUtils]: 49: Hoare triple {28249#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28249#true} is VALID [2022-04-08 11:35:02,904 INFO L290 TraceCheckUtils]: 48: Hoare triple {28249#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {28249#true} is VALID [2022-04-08 11:35:02,904 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {28249#true} {28249#true} #89#return; {28249#true} is VALID [2022-04-08 11:35:02,904 INFO L290 TraceCheckUtils]: 46: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,904 INFO L290 TraceCheckUtils]: 45: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,904 INFO L290 TraceCheckUtils]: 44: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,904 INFO L272 TraceCheckUtils]: 43: Hoare triple {28249#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L290 TraceCheckUtils]: 42: Hoare triple {28249#true} assume !!(~r~0 >= 2 * ~b~0); {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {28249#true} {28249#true} #87#return; {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L290 TraceCheckUtils]: 40: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L290 TraceCheckUtils]: 39: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L290 TraceCheckUtils]: 38: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L272 TraceCheckUtils]: 37: Hoare triple {28249#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {28249#true} {28249#true} #85#return; {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L290 TraceCheckUtils]: 35: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L290 TraceCheckUtils]: 34: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L290 TraceCheckUtils]: 33: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L272 TraceCheckUtils]: 32: Hoare triple {28249#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {28249#true} {28249#true} #83#return; {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L290 TraceCheckUtils]: 30: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L290 TraceCheckUtils]: 29: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L290 TraceCheckUtils]: 28: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,905 INFO L272 TraceCheckUtils]: 27: Hoare triple {28249#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L290 TraceCheckUtils]: 26: Hoare triple {28249#true} assume !!(#t~post7 < 50);havoc #t~post7; {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L290 TraceCheckUtils]: 25: Hoare triple {28249#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L290 TraceCheckUtils]: 24: Hoare triple {28249#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {28249#true} {28249#true} #81#return; {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L290 TraceCheckUtils]: 22: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L290 TraceCheckUtils]: 21: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L290 TraceCheckUtils]: 20: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L272 TraceCheckUtils]: 19: Hoare triple {28249#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {28249#true} {28249#true} #79#return; {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L290 TraceCheckUtils]: 17: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L290 TraceCheckUtils]: 16: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L290 TraceCheckUtils]: 15: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L272 TraceCheckUtils]: 14: Hoare triple {28249#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L290 TraceCheckUtils]: 13: Hoare triple {28249#true} assume !!(#t~post6 < 50);havoc #t~post6; {28249#true} is VALID [2022-04-08 11:35:02,906 INFO L290 TraceCheckUtils]: 12: Hoare triple {28249#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L290 TraceCheckUtils]: 11: Hoare triple {28249#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28249#true} {28249#true} #77#return; {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L290 TraceCheckUtils]: 9: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L290 TraceCheckUtils]: 8: Hoare triple {28249#true} assume !(0 == ~cond); {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L290 TraceCheckUtils]: 7: Hoare triple {28249#true} ~cond := #in~cond; {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L272 TraceCheckUtils]: 6: Hoare triple {28249#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L290 TraceCheckUtils]: 5: Hoare triple {28249#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; {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L272 TraceCheckUtils]: 4: Hoare triple {28249#true} call #t~ret8 := main(); {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28249#true} {28249#true} #93#return; {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L290 TraceCheckUtils]: 2: Hoare triple {28249#true} assume true; {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L290 TraceCheckUtils]: 1: Hoare triple {28249#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; {28249#true} is VALID [2022-04-08 11:35:02,907 INFO L272 TraceCheckUtils]: 0: Hoare triple {28249#true} call ULTIMATE.init(); {28249#true} is VALID [2022-04-08 11:35:02,908 INFO L134 CoverageAnalysis]: Checked inductivity of 1138 backedges. 184 proven. 5 refuted. 0 times theorem prover too weak. 949 trivial. 0 not checked. [2022-04-08 11:35:02,908 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:35:02,908 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1464793766] [2022-04-08 11:35:02,908 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:35:02,908 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1109757254] [2022-04-08 11:35:02,908 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1109757254] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:35:02,908 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:35:02,908 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 8] total 20 [2022-04-08 11:35:02,909 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:35:02,909 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [600733039] [2022-04-08 11:35:02,909 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [600733039] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:35:02,909 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:35:02,909 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-08 11:35:02,909 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [216902238] [2022-04-08 11:35:02,909 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:35:02,909 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.75) internal successors, (44), 14 states have internal predecessors, (44), 12 states have call successors, (27), 2 states have call predecessors, (27), 2 states have return successors, (25), 9 states have call predecessors, (25), 11 states have call successors, (25) Word has length 159 [2022-04-08 11:35:02,910 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:35:02,910 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 2.75) internal successors, (44), 14 states have internal predecessors, (44), 12 states have call successors, (27), 2 states have call predecessors, (27), 2 states have return successors, (25), 9 states have call predecessors, (25), 11 states have call successors, (25) [2022-04-08 11:35:03,041 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:35:03,041 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-08 11:35:03,041 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:35:03,042 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-08 11:35:03,042 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=309, Unknown=0, NotChecked=0, Total=380 [2022-04-08 11:35:03,042 INFO L87 Difference]: Start difference. First operand 344 states and 395 transitions. Second operand has 17 states, 16 states have (on average 2.75) internal successors, (44), 14 states have internal predecessors, (44), 12 states have call successors, (27), 2 states have call predecessors, (27), 2 states have return successors, (25), 9 states have call predecessors, (25), 11 states have call successors, (25) [2022-04-08 11:35:14,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:35:14,498 INFO L93 Difference]: Finished difference Result 378 states and 441 transitions. [2022-04-08 11:35:14,498 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-08 11:35:14,499 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.75) internal successors, (44), 14 states have internal predecessors, (44), 12 states have call successors, (27), 2 states have call predecessors, (27), 2 states have return successors, (25), 9 states have call predecessors, (25), 11 states have call successors, (25) Word has length 159 [2022-04-08 11:35:14,499 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:35:14,499 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.75) internal successors, (44), 14 states have internal predecessors, (44), 12 states have call successors, (27), 2 states have call predecessors, (27), 2 states have return successors, (25), 9 states have call predecessors, (25), 11 states have call successors, (25) [2022-04-08 11:35:14,501 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 178 transitions. [2022-04-08 11:35:14,501 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.75) internal successors, (44), 14 states have internal predecessors, (44), 12 states have call successors, (27), 2 states have call predecessors, (27), 2 states have return successors, (25), 9 states have call predecessors, (25), 11 states have call successors, (25) [2022-04-08 11:35:14,502 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 178 transitions. [2022-04-08 11:35:14,503 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 178 transitions. [2022-04-08 11:35:14,783 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 178 edges. 178 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:35:14,790 INFO L225 Difference]: With dead ends: 378 [2022-04-08 11:35:14,790 INFO L226 Difference]: Without dead ends: 375 [2022-04-08 11:35:14,791 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 320 GetRequests, 297 SyntacticMatches, 2 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 132 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=90, Invalid=416, Unknown=0, NotChecked=0, Total=506 [2022-04-08 11:35:14,791 INFO L913 BasicCegarLoop]: 72 mSDtfsCounter, 49 mSDsluCounter, 453 mSDsCounter, 0 mSdLazyCounter, 1338 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 67 SdHoareTripleChecker+Valid, 525 SdHoareTripleChecker+Invalid, 1380 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 1338 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.9s IncrementalHoareTripleChecker+Time [2022-04-08 11:35:14,791 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [67 Valid, 525 Invalid, 1380 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 1338 Invalid, 0 Unknown, 0 Unchecked, 4.9s Time] [2022-04-08 11:35:14,792 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 375 states. [2022-04-08 11:35:15,255 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 375 to 345. [2022-04-08 11:35:15,256 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:35:15,256 INFO L82 GeneralOperation]: Start isEquivalent. First operand 375 states. Second operand has 345 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 46 states have call predecessors, (77), 44 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) [2022-04-08 11:35:15,256 INFO L74 IsIncluded]: Start isIncluded. First operand 375 states. Second operand has 345 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 46 states have call predecessors, (77), 44 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) [2022-04-08 11:35:15,257 INFO L87 Difference]: Start difference. First operand 375 states. Second operand has 345 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 46 states have call predecessors, (77), 44 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) [2022-04-08 11:35:15,262 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:35:15,262 INFO L93 Difference]: Finished difference Result 375 states and 437 transitions. [2022-04-08 11:35:15,262 INFO L276 IsEmpty]: Start isEmpty. Operand 375 states and 437 transitions. [2022-04-08 11:35:15,263 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:35:15,263 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:35:15,263 INFO L74 IsIncluded]: Start isIncluded. First operand has 345 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 46 states have call predecessors, (77), 44 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) Second operand 375 states. [2022-04-08 11:35:15,263 INFO L87 Difference]: Start difference. First operand has 345 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 46 states have call predecessors, (77), 44 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) Second operand 375 states. [2022-04-08 11:35:15,269 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:35:15,269 INFO L93 Difference]: Finished difference Result 375 states and 437 transitions. [2022-04-08 11:35:15,269 INFO L276 IsEmpty]: Start isEmpty. Operand 375 states and 437 transitions. [2022-04-08 11:35:15,270 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:35:15,270 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:35:15,270 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:35:15,270 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:35:15,270 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 345 states, 223 states have (on average 1.094170403587444) internal successors, (244), 228 states have internal predecessors, (244), 77 states have call successors, (77), 46 states have call predecessors, (77), 44 states have return successors, (74), 70 states have call predecessors, (74), 74 states have call successors, (74) [2022-04-08 11:35:15,285 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 345 states to 345 states and 395 transitions. [2022-04-08 11:35:15,285 INFO L78 Accepts]: Start accepts. Automaton has 345 states and 395 transitions. Word has length 159 [2022-04-08 11:35:15,285 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:35:15,285 INFO L478 AbstractCegarLoop]: Abstraction has 345 states and 395 transitions. [2022-04-08 11:35:15,286 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 2.75) internal successors, (44), 14 states have internal predecessors, (44), 12 states have call successors, (27), 2 states have call predecessors, (27), 2 states have return successors, (25), 9 states have call predecessors, (25), 11 states have call successors, (25) [2022-04-08 11:35:15,286 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 345 states and 395 transitions. [2022-04-08 11:35:15,902 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 395 edges. 395 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:35:15,903 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 395 transitions. [2022-04-08 11:35:15,904 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 160 [2022-04-08 11:35:15,916 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 11:35:15,916 INFO L499 BasicCegarLoop]: trace histogram [24, 23, 23, 5, 5, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 11:35:15,934 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Ended with exit code 0 [2022-04-08 11:35:16,131 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:35:16,131 INFO L403 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 11:35:16,132 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 11:35:16,132 INFO L85 PathProgramCache]: Analyzing trace with hash -107439859, now seen corresponding path program 5 times [2022-04-08 11:35:16,132 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 11:35:16,132 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1442438885] [2022-04-08 11:35:57,619 INFO L97 AcceleratorQvasr]: Qvasr could not accelerate loop because java.lang.UnsupportedOperationException: Cannot deal with arrays. [2022-04-08 11:35:57,620 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 11:35:57,620 INFO L85 PathProgramCache]: Analyzing trace with hash -107439859, now seen corresponding path program 6 times [2022-04-08 11:35:57,620 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 11:35:57,620 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [571327239] [2022-04-08 11:35:57,620 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 11:35:57,620 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 11:35:57,644 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 11:35:57,644 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [528169816] [2022-04-08 11:35:57,644 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 11:35:57,644 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:35:57,644 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 11:35:57,647 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-08 11:35:57,648 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-08 11:35:57,720 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 11:35:57,721 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 11:35:57,721 INFO L263 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-08 11:35:57,763 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 11:35:57,772 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 11:35:58,330 INFO L272 TraceCheckUtils]: 0: Hoare triple {31424#true} call ULTIMATE.init(); {31424#true} is VALID [2022-04-08 11:35:58,330 INFO L290 TraceCheckUtils]: 1: Hoare triple {31424#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; {31424#true} is VALID [2022-04-08 11:35:58,330 INFO L290 TraceCheckUtils]: 2: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,330 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31424#true} {31424#true} #93#return; {31424#true} is VALID [2022-04-08 11:35:58,330 INFO L272 TraceCheckUtils]: 4: Hoare triple {31424#true} call #t~ret8 := main(); {31424#true} is VALID [2022-04-08 11:35:58,331 INFO L290 TraceCheckUtils]: 5: Hoare triple {31424#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; {31424#true} is VALID [2022-04-08 11:35:58,331 INFO L272 TraceCheckUtils]: 6: Hoare triple {31424#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,331 INFO L290 TraceCheckUtils]: 7: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,331 INFO L290 TraceCheckUtils]: 8: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,331 INFO L290 TraceCheckUtils]: 9: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,331 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31424#true} {31424#true} #77#return; {31424#true} is VALID [2022-04-08 11:35:58,331 INFO L290 TraceCheckUtils]: 11: Hoare triple {31424#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,332 INFO L290 TraceCheckUtils]: 12: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,332 INFO L290 TraceCheckUtils]: 13: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,332 INFO L272 TraceCheckUtils]: 14: Hoare triple {31462#(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)); {31424#true} is VALID [2022-04-08 11:35:58,332 INFO L290 TraceCheckUtils]: 15: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,332 INFO L290 TraceCheckUtils]: 16: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,332 INFO L290 TraceCheckUtils]: 17: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,333 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #79#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,333 INFO L272 TraceCheckUtils]: 19: Hoare triple {31462#(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)); {31424#true} is VALID [2022-04-08 11:35:58,333 INFO L290 TraceCheckUtils]: 20: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,333 INFO L290 TraceCheckUtils]: 21: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,333 INFO L290 TraceCheckUtils]: 22: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,333 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #81#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,334 INFO L290 TraceCheckUtils]: 24: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,334 INFO L290 TraceCheckUtils]: 25: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,334 INFO L290 TraceCheckUtils]: 26: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,335 INFO L272 TraceCheckUtils]: 27: Hoare triple {31462#(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)); {31424#true} is VALID [2022-04-08 11:35:58,335 INFO L290 TraceCheckUtils]: 28: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,335 INFO L290 TraceCheckUtils]: 29: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,335 INFO L290 TraceCheckUtils]: 30: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,335 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,335 INFO L272 TraceCheckUtils]: 32: Hoare triple {31462#(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)); {31424#true} is VALID [2022-04-08 11:35:58,335 INFO L290 TraceCheckUtils]: 33: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,336 INFO L290 TraceCheckUtils]: 34: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,336 INFO L290 TraceCheckUtils]: 35: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,336 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #85#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,336 INFO L272 TraceCheckUtils]: 37: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,336 INFO L290 TraceCheckUtils]: 38: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,336 INFO L290 TraceCheckUtils]: 39: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,336 INFO L290 TraceCheckUtils]: 40: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,337 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #87#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,337 INFO L290 TraceCheckUtils]: 42: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,337 INFO L272 TraceCheckUtils]: 43: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,337 INFO L290 TraceCheckUtils]: 44: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,337 INFO L290 TraceCheckUtils]: 45: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,337 INFO L290 TraceCheckUtils]: 46: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,338 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #89#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,338 INFO L290 TraceCheckUtils]: 48: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,338 INFO L290 TraceCheckUtils]: 49: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,339 INFO L290 TraceCheckUtils]: 50: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,339 INFO L272 TraceCheckUtils]: 51: Hoare triple {31462#(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)); {31424#true} is VALID [2022-04-08 11:35:58,339 INFO L290 TraceCheckUtils]: 52: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,339 INFO L290 TraceCheckUtils]: 53: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,339 INFO L290 TraceCheckUtils]: 54: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,340 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,340 INFO L272 TraceCheckUtils]: 56: Hoare triple {31462#(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)); {31424#true} is VALID [2022-04-08 11:35:58,340 INFO L290 TraceCheckUtils]: 57: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,340 INFO L290 TraceCheckUtils]: 58: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,340 INFO L290 TraceCheckUtils]: 59: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,340 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #85#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,340 INFO L272 TraceCheckUtils]: 61: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,340 INFO L290 TraceCheckUtils]: 62: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,341 INFO L290 TraceCheckUtils]: 63: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,341 INFO L290 TraceCheckUtils]: 64: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,341 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #87#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,341 INFO L290 TraceCheckUtils]: 66: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,341 INFO L272 TraceCheckUtils]: 67: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,342 INFO L290 TraceCheckUtils]: 68: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,342 INFO L290 TraceCheckUtils]: 69: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,342 INFO L290 TraceCheckUtils]: 70: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,342 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #89#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,342 INFO L290 TraceCheckUtils]: 72: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,343 INFO L290 TraceCheckUtils]: 73: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,343 INFO L290 TraceCheckUtils]: 74: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,343 INFO L272 TraceCheckUtils]: 75: Hoare triple {31462#(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)); {31424#true} is VALID [2022-04-08 11:35:58,343 INFO L290 TraceCheckUtils]: 76: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,343 INFO L290 TraceCheckUtils]: 77: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,343 INFO L290 TraceCheckUtils]: 78: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,344 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,344 INFO L272 TraceCheckUtils]: 80: Hoare triple {31462#(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)); {31424#true} is VALID [2022-04-08 11:35:58,344 INFO L290 TraceCheckUtils]: 81: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,344 INFO L290 TraceCheckUtils]: 82: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,344 INFO L290 TraceCheckUtils]: 83: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,345 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #85#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,345 INFO L272 TraceCheckUtils]: 85: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,345 INFO L290 TraceCheckUtils]: 86: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,345 INFO L290 TraceCheckUtils]: 87: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,345 INFO L290 TraceCheckUtils]: 88: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,345 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #87#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,346 INFO L290 TraceCheckUtils]: 90: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= 2 * ~b~0); {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,346 INFO L272 TraceCheckUtils]: 91: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,346 INFO L290 TraceCheckUtils]: 92: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,346 INFO L290 TraceCheckUtils]: 93: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,346 INFO L290 TraceCheckUtils]: 94: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,346 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #89#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,347 INFO L290 TraceCheckUtils]: 96: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,347 INFO L290 TraceCheckUtils]: 97: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,347 INFO L290 TraceCheckUtils]: 98: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,348 INFO L272 TraceCheckUtils]: 99: Hoare triple {31462#(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)); {31424#true} is VALID [2022-04-08 11:35:58,348 INFO L290 TraceCheckUtils]: 100: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,348 INFO L290 TraceCheckUtils]: 101: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,348 INFO L290 TraceCheckUtils]: 102: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,348 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #83#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,348 INFO L272 TraceCheckUtils]: 104: Hoare triple {31462#(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)); {31424#true} is VALID [2022-04-08 11:35:58,348 INFO L290 TraceCheckUtils]: 105: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,348 INFO L290 TraceCheckUtils]: 106: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,349 INFO L290 TraceCheckUtils]: 107: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,349 INFO L284 TraceCheckUtils]: 108: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #85#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,349 INFO L272 TraceCheckUtils]: 109: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,349 INFO L290 TraceCheckUtils]: 110: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,349 INFO L290 TraceCheckUtils]: 111: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,349 INFO L290 TraceCheckUtils]: 112: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,350 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {31424#true} {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} #87#return; {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,350 INFO L290 TraceCheckUtils]: 114: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} assume !(~r~0 >= 2 * ~b~0); {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 11:35:58,351 INFO L290 TraceCheckUtils]: 115: Hoare triple {31462#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {31775#(and (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0))} is VALID [2022-04-08 11:35:58,352 INFO L290 TraceCheckUtils]: 116: Hoare triple {31775#(and (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31775#(and (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0))} is VALID [2022-04-08 11:35:58,352 INFO L290 TraceCheckUtils]: 117: Hoare triple {31775#(and (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0))} assume !!(#t~post6 < 50);havoc #t~post6; {31775#(and (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0))} is VALID [2022-04-08 11:35:58,352 INFO L272 TraceCheckUtils]: 118: Hoare triple {31775#(and (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,352 INFO L290 TraceCheckUtils]: 119: Hoare triple {31424#true} ~cond := #in~cond; {31788#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:35:58,353 INFO L290 TraceCheckUtils]: 120: Hoare triple {31788#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:35:58,353 INFO L290 TraceCheckUtils]: 121: Hoare triple {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:35:58,354 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} {31775#(and (= main_~x~0 (+ main_~b~0 main_~r~0)) (= main_~a~0 main_~q~0))} #79#return; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:35:58,354 INFO L272 TraceCheckUtils]: 123: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,354 INFO L290 TraceCheckUtils]: 124: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,354 INFO L290 TraceCheckUtils]: 125: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,354 INFO L290 TraceCheckUtils]: 126: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,355 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {31424#true} {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} #81#return; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:35:58,355 INFO L290 TraceCheckUtils]: 128: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:35:58,355 INFO L290 TraceCheckUtils]: 129: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:35:58,356 INFO L290 TraceCheckUtils]: 130: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} assume !!(#t~post7 < 50);havoc #t~post7; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:35:58,356 INFO L272 TraceCheckUtils]: 131: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,356 INFO L290 TraceCheckUtils]: 132: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,356 INFO L290 TraceCheckUtils]: 133: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,356 INFO L290 TraceCheckUtils]: 134: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,356 INFO L284 TraceCheckUtils]: 135: Hoare quadruple {31424#true} {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} #83#return; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:35:58,356 INFO L272 TraceCheckUtils]: 136: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,357 INFO L290 TraceCheckUtils]: 137: Hoare triple {31424#true} ~cond := #in~cond; {31788#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:35:58,357 INFO L290 TraceCheckUtils]: 138: Hoare triple {31788#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:35:58,357 INFO L290 TraceCheckUtils]: 139: Hoare triple {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:35:58,358 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} #85#return; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:35:58,358 INFO L272 TraceCheckUtils]: 141: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,358 INFO L290 TraceCheckUtils]: 142: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:35:58,358 INFO L290 TraceCheckUtils]: 143: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:35:58,358 INFO L290 TraceCheckUtils]: 144: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:35:58,358 INFO L284 TraceCheckUtils]: 145: Hoare quadruple {31424#true} {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} #87#return; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:35:58,359 INFO L290 TraceCheckUtils]: 146: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} assume !(~r~0 >= 2 * ~b~0); {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:35:58,365 INFO L290 TraceCheckUtils]: 147: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {31875#(= (+ main_~x~0 (* (- 1) main_~b~0) (* (- 1) main_~r~0)) (* (+ (* (- 1) main_~a~0) main_~q~0) main_~y~0))} is VALID [2022-04-08 11:35:58,387 INFO L290 TraceCheckUtils]: 148: Hoare triple {31875#(= (+ main_~x~0 (* (- 1) main_~b~0) (* (- 1) main_~r~0)) (* (+ (* (- 1) main_~a~0) main_~q~0) main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31875#(= (+ main_~x~0 (* (- 1) main_~b~0) (* (- 1) main_~r~0)) (* (+ (* (- 1) main_~a~0) main_~q~0) main_~y~0))} is VALID [2022-04-08 11:35:58,387 INFO L290 TraceCheckUtils]: 149: Hoare triple {31875#(= (+ main_~x~0 (* (- 1) main_~b~0) (* (- 1) main_~r~0)) (* (+ (* (- 1) main_~a~0) main_~q~0) main_~y~0))} assume !!(#t~post6 < 50);havoc #t~post6; {31875#(= (+ main_~x~0 (* (- 1) main_~b~0) (* (- 1) main_~r~0)) (* (+ (* (- 1) main_~a~0) main_~q~0) main_~y~0))} is VALID [2022-04-08 11:35:58,387 INFO L272 TraceCheckUtils]: 150: Hoare triple {31875#(= (+ main_~x~0 (* (- 1) main_~b~0) (* (- 1) main_~r~0)) (* (+ (* (- 1) main_~a~0) main_~q~0) main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:35:58,387 INFO L290 TraceCheckUtils]: 151: Hoare triple {31424#true} ~cond := #in~cond; {31788#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:35:58,388 INFO L290 TraceCheckUtils]: 152: Hoare triple {31788#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:35:58,388 INFO L290 TraceCheckUtils]: 153: Hoare triple {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:35:58,389 INFO L284 TraceCheckUtils]: 154: Hoare quadruple {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} {31875#(= (+ main_~x~0 (* (- 1) main_~b~0) (* (- 1) main_~r~0)) (* (+ (* (- 1) main_~a~0) main_~q~0) main_~y~0))} #79#return; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:35:58,390 INFO L272 TraceCheckUtils]: 155: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {31900#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:35:58,390 INFO L290 TraceCheckUtils]: 156: Hoare triple {31900#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {31904#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:35:58,390 INFO L290 TraceCheckUtils]: 157: Hoare triple {31904#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {31425#false} is VALID [2022-04-08 11:35:58,390 INFO L290 TraceCheckUtils]: 158: Hoare triple {31425#false} assume !false; {31425#false} is VALID [2022-04-08 11:35:58,391 INFO L134 CoverageAnalysis]: Checked inductivity of 1138 backedges. 211 proven. 52 refuted. 0 times theorem prover too weak. 875 trivial. 0 not checked. [2022-04-08 11:35:58,391 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 11:36:14,885 INFO L290 TraceCheckUtils]: 158: Hoare triple {31425#false} assume !false; {31425#false} is VALID [2022-04-08 11:36:14,885 INFO L290 TraceCheckUtils]: 157: Hoare triple {31904#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {31425#false} is VALID [2022-04-08 11:36:14,886 INFO L290 TraceCheckUtils]: 156: Hoare triple {31900#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {31904#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 11:36:14,886 INFO L272 TraceCheckUtils]: 155: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {31900#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 11:36:14,887 INFO L284 TraceCheckUtils]: 154: Hoare quadruple {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} {31923#(or (not (= main_~b~0 (* main_~a~0 main_~y~0))) (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)))} #79#return; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:36:14,887 INFO L290 TraceCheckUtils]: 153: Hoare triple {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:36:14,888 INFO L290 TraceCheckUtils]: 152: Hoare triple {31933#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:36:14,888 INFO L290 TraceCheckUtils]: 151: Hoare triple {31424#true} ~cond := #in~cond; {31933#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:36:14,888 INFO L272 TraceCheckUtils]: 150: Hoare triple {31923#(or (not (= main_~b~0 (* main_~a~0 main_~y~0))) (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,889 INFO L290 TraceCheckUtils]: 149: Hoare triple {31923#(or (not (= main_~b~0 (* main_~a~0 main_~y~0))) (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {31923#(or (not (= main_~b~0 (* main_~a~0 main_~y~0))) (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)))} is VALID [2022-04-08 11:36:14,889 INFO L290 TraceCheckUtils]: 148: Hoare triple {31923#(or (not (= main_~b~0 (* main_~a~0 main_~y~0))) (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31923#(or (not (= main_~b~0 (* main_~a~0 main_~y~0))) (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)))} is VALID [2022-04-08 11:36:14,895 INFO L290 TraceCheckUtils]: 147: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {31923#(or (not (= main_~b~0 (* main_~a~0 main_~y~0))) (= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0)))} is VALID [2022-04-08 11:36:14,896 INFO L290 TraceCheckUtils]: 146: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} assume !(~r~0 >= 2 * ~b~0); {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:36:14,896 INFO L284 TraceCheckUtils]: 145: Hoare quadruple {31424#true} {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} #87#return; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:36:14,896 INFO L290 TraceCheckUtils]: 144: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,896 INFO L290 TraceCheckUtils]: 143: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,896 INFO L290 TraceCheckUtils]: 142: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,896 INFO L272 TraceCheckUtils]: 141: Hoare triple {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,897 INFO L284 TraceCheckUtils]: 140: Hoare quadruple {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} {31424#true} #85#return; {31799#(= (+ main_~x~0 (* (- 1) main_~r~0)) (* main_~q~0 main_~y~0))} is VALID [2022-04-08 11:36:14,897 INFO L290 TraceCheckUtils]: 139: Hoare triple {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:36:14,897 INFO L290 TraceCheckUtils]: 138: Hoare triple {31933#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {31792#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 11:36:14,898 INFO L290 TraceCheckUtils]: 137: Hoare triple {31424#true} ~cond := #in~cond; {31933#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 11:36:14,898 INFO L272 TraceCheckUtils]: 136: Hoare triple {31424#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,898 INFO L284 TraceCheckUtils]: 135: Hoare quadruple {31424#true} {31424#true} #83#return; {31424#true} is VALID [2022-04-08 11:36:14,898 INFO L290 TraceCheckUtils]: 134: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,898 INFO L290 TraceCheckUtils]: 133: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,898 INFO L290 TraceCheckUtils]: 132: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,898 INFO L272 TraceCheckUtils]: 131: Hoare triple {31424#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,898 INFO L290 TraceCheckUtils]: 130: Hoare triple {31424#true} assume !!(#t~post7 < 50);havoc #t~post7; {31424#true} is VALID [2022-04-08 11:36:14,898 INFO L290 TraceCheckUtils]: 129: Hoare triple {31424#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31424#true} is VALID [2022-04-08 11:36:14,898 INFO L290 TraceCheckUtils]: 128: Hoare triple {31424#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {31424#true} is VALID [2022-04-08 11:36:14,898 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {31424#true} {31424#true} #81#return; {31424#true} is VALID [2022-04-08 11:36:14,898 INFO L290 TraceCheckUtils]: 126: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L290 TraceCheckUtils]: 125: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L290 TraceCheckUtils]: 124: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L272 TraceCheckUtils]: 123: Hoare triple {31424#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {31424#true} {31424#true} #79#return; {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L290 TraceCheckUtils]: 121: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L290 TraceCheckUtils]: 120: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L290 TraceCheckUtils]: 119: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L272 TraceCheckUtils]: 118: Hoare triple {31424#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L290 TraceCheckUtils]: 117: Hoare triple {31424#true} assume !!(#t~post6 < 50);havoc #t~post6; {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L290 TraceCheckUtils]: 116: Hoare triple {31424#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L290 TraceCheckUtils]: 115: Hoare triple {31424#true} ~r~0 := ~r~0 - ~b~0;~q~0 := ~q~0 + ~a~0; {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L290 TraceCheckUtils]: 114: Hoare triple {31424#true} assume !(~r~0 >= 2 * ~b~0); {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {31424#true} {31424#true} #87#return; {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L290 TraceCheckUtils]: 112: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,899 INFO L290 TraceCheckUtils]: 111: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L290 TraceCheckUtils]: 110: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L272 TraceCheckUtils]: 109: Hoare triple {31424#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L284 TraceCheckUtils]: 108: Hoare quadruple {31424#true} {31424#true} #85#return; {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L290 TraceCheckUtils]: 107: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L290 TraceCheckUtils]: 106: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L290 TraceCheckUtils]: 105: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L272 TraceCheckUtils]: 104: Hoare triple {31424#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {31424#true} {31424#true} #83#return; {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L290 TraceCheckUtils]: 102: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L290 TraceCheckUtils]: 101: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L290 TraceCheckUtils]: 100: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L272 TraceCheckUtils]: 99: Hoare triple {31424#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L290 TraceCheckUtils]: 98: Hoare triple {31424#true} assume !!(#t~post7 < 50);havoc #t~post7; {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L290 TraceCheckUtils]: 97: Hoare triple {31424#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31424#true} is VALID [2022-04-08 11:36:14,900 INFO L290 TraceCheckUtils]: 96: Hoare triple {31424#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {31424#true} {31424#true} #89#return; {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L290 TraceCheckUtils]: 94: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L290 TraceCheckUtils]: 93: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L290 TraceCheckUtils]: 92: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L272 TraceCheckUtils]: 91: Hoare triple {31424#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L290 TraceCheckUtils]: 90: Hoare triple {31424#true} assume !!(~r~0 >= 2 * ~b~0); {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {31424#true} {31424#true} #87#return; {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L290 TraceCheckUtils]: 88: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L290 TraceCheckUtils]: 87: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L290 TraceCheckUtils]: 86: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L272 TraceCheckUtils]: 85: Hoare triple {31424#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {31424#true} {31424#true} #85#return; {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L290 TraceCheckUtils]: 83: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L290 TraceCheckUtils]: 82: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,901 INFO L290 TraceCheckUtils]: 81: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L272 TraceCheckUtils]: 80: Hoare triple {31424#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {31424#true} {31424#true} #83#return; {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L290 TraceCheckUtils]: 78: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L290 TraceCheckUtils]: 77: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L290 TraceCheckUtils]: 76: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L272 TraceCheckUtils]: 75: Hoare triple {31424#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L290 TraceCheckUtils]: 74: Hoare triple {31424#true} assume !!(#t~post7 < 50);havoc #t~post7; {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L290 TraceCheckUtils]: 73: Hoare triple {31424#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L290 TraceCheckUtils]: 72: Hoare triple {31424#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {31424#true} {31424#true} #89#return; {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L290 TraceCheckUtils]: 70: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L290 TraceCheckUtils]: 69: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L290 TraceCheckUtils]: 68: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L272 TraceCheckUtils]: 67: Hoare triple {31424#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,902 INFO L290 TraceCheckUtils]: 66: Hoare triple {31424#true} assume !!(~r~0 >= 2 * ~b~0); {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L284 TraceCheckUtils]: 65: Hoare quadruple {31424#true} {31424#true} #87#return; {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L290 TraceCheckUtils]: 64: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L290 TraceCheckUtils]: 63: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L290 TraceCheckUtils]: 62: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L272 TraceCheckUtils]: 61: Hoare triple {31424#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {31424#true} {31424#true} #85#return; {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L290 TraceCheckUtils]: 59: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L290 TraceCheckUtils]: 58: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L290 TraceCheckUtils]: 57: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L272 TraceCheckUtils]: 56: Hoare triple {31424#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {31424#true} {31424#true} #83#return; {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L290 TraceCheckUtils]: 54: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L290 TraceCheckUtils]: 53: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L290 TraceCheckUtils]: 52: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,903 INFO L272 TraceCheckUtils]: 51: Hoare triple {31424#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L290 TraceCheckUtils]: 50: Hoare triple {31424#true} assume !!(#t~post7 < 50);havoc #t~post7; {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L290 TraceCheckUtils]: 49: Hoare triple {31424#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L290 TraceCheckUtils]: 48: Hoare triple {31424#true} ~a~0 := 2 * ~a~0;~b~0 := 2 * ~b~0; {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {31424#true} {31424#true} #89#return; {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L290 TraceCheckUtils]: 46: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L290 TraceCheckUtils]: 45: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L290 TraceCheckUtils]: 44: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L272 TraceCheckUtils]: 43: Hoare triple {31424#true} call __VERIFIER_assert((if ~r~0 >= 2 * ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L290 TraceCheckUtils]: 42: Hoare triple {31424#true} assume !!(~r~0 >= 2 * ~b~0); {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31424#true} {31424#true} #87#return; {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L290 TraceCheckUtils]: 40: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L290 TraceCheckUtils]: 39: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L290 TraceCheckUtils]: 38: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L272 TraceCheckUtils]: 37: Hoare triple {31424#true} call __VERIFIER_assert((if ~r~0 >= 0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31424#true} {31424#true} #85#return; {31424#true} is VALID [2022-04-08 11:36:14,904 INFO L290 TraceCheckUtils]: 35: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L290 TraceCheckUtils]: 34: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L290 TraceCheckUtils]: 33: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L272 TraceCheckUtils]: 32: Hoare triple {31424#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {31424#true} {31424#true} #83#return; {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L290 TraceCheckUtils]: 30: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L290 TraceCheckUtils]: 29: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L290 TraceCheckUtils]: 28: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L272 TraceCheckUtils]: 27: Hoare triple {31424#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L290 TraceCheckUtils]: 26: Hoare triple {31424#true} assume !!(#t~post7 < 50);havoc #t~post7; {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L290 TraceCheckUtils]: 25: Hoare triple {31424#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L290 TraceCheckUtils]: 24: Hoare triple {31424#true} assume !!(~r~0 >= ~y~0);~a~0 := 1;~b~0 := ~y~0; {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {31424#true} {31424#true} #81#return; {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L290 TraceCheckUtils]: 22: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L290 TraceCheckUtils]: 21: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,905 INFO L290 TraceCheckUtils]: 20: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L272 TraceCheckUtils]: 19: Hoare triple {31424#true} call __VERIFIER_assert((if ~x~0 == ~q~0 * ~y~0 + ~r~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {31424#true} {31424#true} #79#return; {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L290 TraceCheckUtils]: 17: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L290 TraceCheckUtils]: 16: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L290 TraceCheckUtils]: 15: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L272 TraceCheckUtils]: 14: Hoare triple {31424#true} call __VERIFIER_assert((if ~b~0 == ~y~0 * ~a~0 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L290 TraceCheckUtils]: 13: Hoare triple {31424#true} assume !!(#t~post6 < 50);havoc #t~post6; {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L290 TraceCheckUtils]: 12: Hoare triple {31424#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L290 TraceCheckUtils]: 11: Hoare triple {31424#true} ~q~0 := 0;~r~0 := ~x~0;~a~0 := 0;~b~0 := 0; {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31424#true} {31424#true} #77#return; {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L290 TraceCheckUtils]: 9: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L290 TraceCheckUtils]: 8: Hoare triple {31424#true} assume !(0 == ~cond); {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L290 TraceCheckUtils]: 7: Hoare triple {31424#true} ~cond := #in~cond; {31424#true} is VALID [2022-04-08 11:36:14,906 INFO L272 TraceCheckUtils]: 6: Hoare triple {31424#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31424#true} is VALID [2022-04-08 11:36:14,907 INFO L290 TraceCheckUtils]: 5: Hoare triple {31424#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; {31424#true} is VALID [2022-04-08 11:36:14,907 INFO L272 TraceCheckUtils]: 4: Hoare triple {31424#true} call #t~ret8 := main(); {31424#true} is VALID [2022-04-08 11:36:14,907 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31424#true} {31424#true} #93#return; {31424#true} is VALID [2022-04-08 11:36:14,907 INFO L290 TraceCheckUtils]: 2: Hoare triple {31424#true} assume true; {31424#true} is VALID [2022-04-08 11:36:14,907 INFO L290 TraceCheckUtils]: 1: Hoare triple {31424#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; {31424#true} is VALID [2022-04-08 11:36:14,907 INFO L272 TraceCheckUtils]: 0: Hoare triple {31424#true} call ULTIMATE.init(); {31424#true} is VALID [2022-04-08 11:36:14,907 INFO L134 CoverageAnalysis]: Checked inductivity of 1138 backedges. 184 proven. 5 refuted. 0 times theorem prover too weak. 949 trivial. 0 not checked. [2022-04-08 11:36:14,907 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 11:36:14,908 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [571327239] [2022-04-08 11:36:14,908 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 11:36:14,908 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [528169816] [2022-04-08 11:36:14,908 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [528169816] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 11:36:14,908 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 11:36:14,908 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 8] total 12 [2022-04-08 11:36:14,908 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 11:36:14,908 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1442438885] [2022-04-08 11:36:14,908 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1442438885] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 11:36:14,908 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 11:36:14,908 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-08 11:36:14,908 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [198787322] [2022-04-08 11:36:14,908 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 11:36:14,909 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 3 states have call predecessors, (14), 5 states have call successors, (14) Word has length 159 [2022-04-08 11:36:14,909 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 11:36:14,909 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 3 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 11:36:14,968 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:36:14,968 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 11:36:14,969 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 11:36:14,969 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 11:36:14,969 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=101, Unknown=0, NotChecked=0, Total=132 [2022-04-08 11:36:14,969 INFO L87 Difference]: Start difference. First operand 345 states and 395 transitions. Second operand has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 3 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 11:36:16,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:36:16,295 INFO L93 Difference]: Finished difference Result 363 states and 412 transitions. [2022-04-08 11:36:16,295 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 11:36:16,295 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 3 states have call predecessors, (14), 5 states have call successors, (14) Word has length 159 [2022-04-08 11:36:16,295 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 11:36:16,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 3 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 11:36:16,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 73 transitions. [2022-04-08 11:36:16,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 3 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 11:36:16,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 73 transitions. [2022-04-08 11:36:16,297 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 73 transitions. [2022-04-08 11:36:16,377 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:36:16,378 INFO L225 Difference]: With dead ends: 363 [2022-04-08 11:36:16,378 INFO L226 Difference]: Without dead ends: 0 [2022-04-08 11:36:16,379 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 323 GetRequests, 302 SyntacticMatches, 5 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=73, Invalid=233, Unknown=0, NotChecked=0, Total=306 [2022-04-08 11:36:16,379 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 32 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 164 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 125 SdHoareTripleChecker+Invalid, 210 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 164 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 11:36:16,379 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 125 Invalid, 210 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 164 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 11:36:16,379 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-08 11:36:16,379 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-08 11:36:16,379 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 11:36:16,379 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-08 11:36:16,380 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-08 11:36:16,380 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-08 11:36:16,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:36:16,380 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 11:36:16,380 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:36:16,380 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:36:16,380 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:36:16,380 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-08 11:36:16,380 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-08 11:36:16,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 11:36:16,380 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 11:36:16,380 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:36:16,380 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:36:16,380 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 11:36:16,380 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 11:36:16,380 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 11:36:16,380 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-08 11:36:16,381 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-08 11:36:16,381 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 159 [2022-04-08 11:36:16,381 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 11:36:16,381 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-08 11:36:16,381 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.4) internal successors, (34), 9 states have internal predecessors, (34), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 3 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-08 11:36:16,381 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-08 11:36:16,381 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 11:36:16,381 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 11:36:16,381 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 11:36:16,383 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-08 11:36:16,401 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-08 11:36:16,583 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 11:36:16,585 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-08 11:36:26,912 INFO L882 garLoopResultBuilder]: For program point reach_errorEXIT(line 8) no Hoare annotation was computed. [2022-04-08 11:36:26,912 INFO L882 garLoopResultBuilder]: For program point reach_errorENTRY(line 8) no Hoare annotation was computed. [2022-04-08 11:36:26,912 INFO L882 garLoopResultBuilder]: For program point reach_errorFINAL(line 8) no Hoare annotation was computed. [2022-04-08 11:36:26,912 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 11 13) the Hoare annotation is: true [2022-04-08 11:36:26,912 INFO L878 garLoopResultBuilder]: At program point L12(line 12) the Hoare annotation is: (or (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|) (not (<= ~counter~0 0))) [2022-04-08 11:36:26,912 INFO L878 garLoopResultBuilder]: At program point L12-2(lines 11 13) the Hoare annotation is: (or (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) (not (<= ~counter~0 0))) [2022-04-08 11:36:26,912 INFO L878 garLoopResultBuilder]: At program point assume_abort_if_notEXIT(lines 11 13) the Hoare annotation is: (or (and (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)) (not (<= ~counter~0 0))) [2022-04-08 11:36:26,912 INFO L878 garLoopResultBuilder]: At program point L37-4(lines 37 61) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~q~0 main_~y~0))) (and (= (+ .cse0 main_~r~0) main_~x~0) (= (+ .cse0 main_~b~0 main_~r~0) (+ main_~x~0 (* main_~a~0 main_~y~0))) (<= 1 main_~y~0))) (and (= main_~x~0 main_~r~0) (= main_~q~0 0))) [2022-04-08 11:36:26,912 INFO L885 garLoopResultBuilder]: At program point mainEXIT(lines 23 65) the Hoare annotation is: true [2022-04-08 11:36:26,912 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_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= (* 2 .cse0) main_~r~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) (not (<= |old(~counter~0)| 0))) [2022-04-08 11:36:26,912 INFO L878 garLoopResultBuilder]: At program point L54-1(line 54) the Hoare annotation is: (or (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= (* 2 .cse0) main_~r~0) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0))) (not (<= |old(~counter~0)| 0))) [2022-04-08 11:36:26,912 INFO L878 garLoopResultBuilder]: At program point L48(line 48) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0)))) [2022-04-08 11:36:26,913 INFO L878 garLoopResultBuilder]: At program point L46-1(lines 46 58) the Hoare annotation is: (let ((.cse1 (* main_~a~0 main_~y~0))) (let ((.cse0 (* main_~q~0 main_~y~0)) (.cse2 (<= 1 main_~y~0)) (.cse3 (= main_~b~0 .cse1))) (or (and (<= (+ |main_#t~post7| 1) ~counter~0) (= (+ .cse0 main_~b~0 main_~r~0) (+ main_~x~0 .cse1)) (<= 1 main_~r~0) .cse2 .cse3) (and (= (+ .cse0 main_~r~0) main_~x~0) (not (<= (* main_~y~0 4) main_~x~0)) (<= 1 (div (* (- 1) main_~q~0) (- 2))) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= (mod main_~q~0 2) 0) (<= |main_#t~post7| 4) .cse2 .cse3) (not (<= |old(~counter~0)| 0))))) [2022-04-08 11:36:26,913 INFO L885 garLoopResultBuilder]: At program point mainFINAL(lines 23 65) the Hoare annotation is: true [2022-04-08 11:36:26,913 INFO L878 garLoopResultBuilder]: At program point L46-3(lines 46 58) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0)))) [2022-04-08 11:36:26,913 INFO L878 garLoopResultBuilder]: At program point L46-4(lines 46 58) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0)))) [2022-04-08 11:36:26,913 INFO L878 garLoopResultBuilder]: At program point L38(line 38) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~y~0) (= main_~b~0 .cse0)))) [2022-04-08 11:36:26,913 INFO L878 garLoopResultBuilder]: At program point L38-1(line 38) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~y~0) (= main_~b~0 .cse0)))) [2022-04-08 11:36:26,913 INFO L885 garLoopResultBuilder]: At program point L63(line 63) the Hoare annotation is: true [2022-04-08 11:36:26,913 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-08 11:36:26,913 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-08 11:36:26,913 INFO L878 garLoopResultBuilder]: At program point L30-1(line 30) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (and (= ~counter~0 |old(~counter~0)|) (<= 1 main_~y~0))) [2022-04-08 11:36:26,913 INFO L878 garLoopResultBuilder]: At program point L49(lines 46 58) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0)))) [2022-04-08 11:36:26,913 INFO L878 garLoopResultBuilder]: At program point L47(line 47) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0)))) [2022-04-08 11:36:26,913 INFO L878 garLoopResultBuilder]: At program point L47-1(line 47) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~r~0) (<= 1 main_~y~0) (= main_~b~0 .cse0)))) [2022-04-08 11:36:26,913 INFO L878 garLoopResultBuilder]: At program point L39(lines 37 61) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~y~0) (= main_~b~0 .cse0)))) [2022-04-08 11:36:26,913 INFO L878 garLoopResultBuilder]: At program point L37-1(lines 37 61) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~y~0) (= main_~b~0 .cse0)))) [2022-04-08 11:36:26,914 INFO L878 garLoopResultBuilder]: At program point L37-3(lines 37 61) the Hoare annotation is: (or (not (<= |old(~counter~0)| 0)) (let ((.cse0 (* main_~a~0 main_~y~0))) (and (= (+ (* main_~q~0 main_~y~0) main_~b~0 main_~r~0) (+ main_~x~0 .cse0)) (<= 1 main_~y~0) (= main_~b~0 .cse0)))) [2022-04-08 11:36:26,914 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: (<= ~counter~0 0) [2022-04-08 11:36:26,914 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-08 11:36:26,914 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: (<= ~counter~0 0) [2022-04-08 11:36:26,914 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-08 11:36:26,914 INFO L878 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: (<= ~counter~0 0) [2022-04-08 11:36:26,914 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-08 11:36:26,914 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-08 11:36:26,914 INFO L878 garLoopResultBuilder]: At program point L16(lines 16 17) the Hoare annotation is: (= |__VERIFIER_assert_#in~cond| 0) [2022-04-08 11:36:26,914 INFO L878 garLoopResultBuilder]: At program point L15(lines 15 18) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (= |__VERIFIER_assert_#in~cond| 0)) [2022-04-08 11:36:26,914 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 14 20) the Hoare annotation is: true [2022-04-08 11:36:26,914 INFO L878 garLoopResultBuilder]: At program point L15-2(lines 14 20) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (= |__VERIFIER_assert_#in~cond| 0)) [2022-04-08 11:36:26,914 INFO L878 garLoopResultBuilder]: At program point __VERIFIER_assertEXIT(lines 14 20) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond) (= |__VERIFIER_assert_#in~cond| 0)) [2022-04-08 11:36:26,914 INFO L878 garLoopResultBuilder]: At program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 17) the Hoare annotation is: (= |__VERIFIER_assert_#in~cond| 0) [2022-04-08 11:36:26,916 INFO L719 BasicCegarLoop]: Path program histogram: [8, 8, 6, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2] [2022-04-08 11:36:26,917 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-08 11:36:26,919 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-08 11:36:26,941 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-08 11:36:26,982 INFO L163 areAnnotationChecker]: CFG has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-08 11:36:26,999 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 11:36:26 BoogieIcfgContainer [2022-04-08 11:36:26,999 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-08 11:36:27,000 INFO L158 Benchmark]: Toolchain (without parser) took 829803.40ms. Allocated memory was 189.8MB in the beginning and 345.0MB in the end (delta: 155.2MB). Free memory was 134.8MB in the beginning and 165.4MB in the end (delta: -30.6MB). Peak memory consumption was 185.4MB. Max. memory is 8.0GB. [2022-04-08 11:36:27,001 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 189.8MB. Free memory was 151.4MB in the beginning and 151.3MB in the end (delta: 89.8kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 11:36:27,001 INFO L158 Benchmark]: CACSL2BoogieTranslator took 189.86ms. Allocated memory was 189.8MB in the beginning and 345.0MB in the end (delta: 155.2MB). Free memory was 134.6MB in the beginning and 316.8MB in the end (delta: -182.3MB). Peak memory consumption was 11.3MB. Max. memory is 8.0GB. [2022-04-08 11:36:27,001 INFO L158 Benchmark]: Boogie Preprocessor took 21.46ms. Allocated memory is still 345.0MB. Free memory was 316.8MB in the beginning and 315.3MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-08 11:36:27,001 INFO L158 Benchmark]: RCFGBuilder took 246.78ms. Allocated memory is still 345.0MB. Free memory was 315.3MB in the beginning and 303.2MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-08 11:36:27,002 INFO L158 Benchmark]: TraceAbstraction took 829339.95ms. Allocated memory is still 345.0MB. Free memory was 302.7MB in the beginning and 165.4MB in the end (delta: 137.3MB). Peak memory consumption was 198.3MB. Max. memory is 8.0GB. [2022-04-08 11:36:27,004 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 189.8MB. Free memory was 151.4MB in the beginning and 151.3MB in the end (delta: 89.8kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 189.86ms. Allocated memory was 189.8MB in the beginning and 345.0MB in the end (delta: 155.2MB). Free memory was 134.6MB in the beginning and 316.8MB in the end (delta: -182.3MB). Peak memory consumption was 11.3MB. Max. memory is 8.0GB. * Boogie Preprocessor took 21.46ms. Allocated memory is still 345.0MB. Free memory was 316.8MB in the beginning and 315.3MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 246.78ms. Allocated memory is still 345.0MB. Free memory was 315.3MB in the beginning and 303.2MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 829339.95ms. Allocated memory is still 345.0MB. Free memory was 302.7MB in the beginning and 165.4MB in the end (delta: 137.3MB). Peak memory consumption was 198.3MB. 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: 829.2s, OverallIterations: 24, TraceHistogramMax: 24, PathProgramHistogramMax: 8, EmptinessCheckTime: 0.1s, AutomataDifference: 38.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 10.3s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 736 SdHoareTripleChecker+Valid, 12.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 621 mSDsluCounter, 4559 SdHoareTripleChecker+Invalid, 12.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 16 IncrementalHoareTripleChecker+Unchecked, 3384 mSDsCounter, 501 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 4874 IncrementalHoareTripleChecker+Invalid, 5391 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 501 mSolverCounterUnsat, 1175 mSDtfsCounter, 4874 mSolverCounterSat, 0.1s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 3345 GetRequests, 3058 SyntacticMatches, 20 SemanticMatches, 267 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 792 ImplicationChecksByTransitivity, 5.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=345occurred in iteration=23, InterpolantAutomatonStates: 216, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 4.3s AutomataMinimizationTime, 24 MinimizatonAttempts, 131 StatesRemovedByMinimization, 17 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 38 LocationsWithAnnotation, 1334 PreInvPairs, 1823 NumberOfFragments, 604 HoareAnnotationTreeSize, 1334 FomulaSimplifications, 8461 FormulaSimplificationTreeSizeReduction, 3.0s HoareSimplificationTime, 38 FomulaSimplificationsInter, 205190 FormulaSimplificationTreeSizeReductionInter, 7.1s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: No data available, 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: !(\old(counter) <= 0) || (((q * y + b + r == x + a * y && 1 <= r) && 1 <= y) && b == a * y) - InvariantResult [Line: 37]: Loop Invariant Derived loop invariant: !(\old(counter) <= 0) || ((q * y + b + r == x + a * y && 1 <= y) && b == a * y) - ProcedureContractResult [Line: 11]: Procedure Contract for assume_abort_if_not Derived contract for procedure assume_abort_if_not: (!(\old(cond) == 0) && cond == \old(cond)) || !(counter <= 0) - ProcedureContractResult [Line: 23]: Procedure Contract for main Derived contract for procedure main: 1 - ProcedureContractResult [Line: 14]: Procedure Contract for __VERIFIER_assert Derived contract for procedure __VERIFIER_assert: \old(cond) == cond || \old(cond) == 0 RESULT: Ultimate proved your program to be correct! [2022-04-08 11:36:27,224 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...