/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/egcd3-ll_valuebound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 12:32:30,495 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 12:32:30,497 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 12:32:30,527 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 12:32:30,528 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 12:32:30,529 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 12:32:30,532 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 12:32:30,538 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 12:32:30,539 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 12:32:30,539 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 12:32:30,540 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 12:32:30,541 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 12:32:30,541 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 12:32:30,542 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 12:32:30,543 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 12:32:30,543 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 12:32:30,544 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 12:32:30,545 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 12:32:30,546 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 12:32:30,549 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 12:32:30,555 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 12:32:30,560 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 12:32:30,561 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 12:32:30,562 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 12:32:30,563 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 12:32:30,569 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 12:32:30,570 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 12:32:30,570 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 12:32:30,570 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 12:32:30,571 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 12:32:30,571 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 12:32:30,572 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 12:32:30,572 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 12:32:30,573 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 12:32:30,573 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 12:32:30,574 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 12:32:30,574 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 12:32:30,575 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 12:32:30,575 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 12:32:30,575 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 12:32:30,576 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 12:32:30,580 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 12:32:30,581 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 12:32:30,594 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 12:32:30,595 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 12:32:30,596 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 12:32:30,596 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 12:32:30,596 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 12:32:30,596 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 12:32:30,596 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 12:32:30,596 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 12:32:30,597 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 12:32:30,597 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 12:32:30,597 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 12:32:30,598 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 12:32:30,598 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 12:32:30,598 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 12:32:30,598 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 12:32:30,598 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 12:32:30,598 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 12:32:30,598 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 12:32:30,598 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 12:32:30,599 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 12:32:30,599 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 12:32:30,599 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-08 12:32:30,599 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 12:32:30,801 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 12:32:30,822 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 12:32:30,825 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 12:32:30,825 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 12:32:30,826 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 12:32:30,827 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound5.c [2022-04-08 12:32:30,879 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/78107117c/58214acaf2264da2a833ff25810be075/FLAGa3e7c5928 [2022-04-08 12:32:31,248 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 12:32:31,248 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_valuebound5.c [2022-04-08 12:32:31,254 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/78107117c/58214acaf2264da2a833ff25810be075/FLAGa3e7c5928 [2022-04-08 12:32:31,264 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/78107117c/58214acaf2264da2a833ff25810be075 [2022-04-08 12:32:31,266 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 12:32:31,267 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 12:32:31,269 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 12:32:31,269 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 12:32:31,271 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 12:32:31,272 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:32:31" (1/1) ... [2022-04-08 12:32:31,273 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@243e07fc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:32:31, skipping insertion in model container [2022-04-08 12:32:31,273 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 12:32:31" (1/1) ... [2022-04-08 12:32:31,279 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 12:32:31,294 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 12:32:31,469 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/egcd3-ll_valuebound5.c[490,503] [2022-04-08 12:32:31,505 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 12:32:31,515 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 12:32:31,523 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/egcd3-ll_valuebound5.c[490,503] [2022-04-08 12:32:31,532 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 12:32:31,543 INFO L208 MainTranslator]: Completed translation [2022-04-08 12:32:31,544 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:32:31 WrapperNode [2022-04-08 12:32:31,544 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 12:32:31,545 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 12:32:31,545 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 12:32:31,545 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 12:32:31,554 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:32:31" (1/1) ... [2022-04-08 12:32:31,554 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:32:31" (1/1) ... [2022-04-08 12:32:31,560 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:32:31" (1/1) ... [2022-04-08 12:32:31,560 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:32:31" (1/1) ... [2022-04-08 12:32:31,578 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:32:31" (1/1) ... [2022-04-08 12:32:31,586 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:32:31" (1/1) ... [2022-04-08 12:32:31,595 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:32:31" (1/1) ... [2022-04-08 12:32:31,597 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 12:32:31,598 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 12:32:31,598 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 12:32:31,598 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 12:32:31,601 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:32:31" (1/1) ... [2022-04-08 12:32:31,608 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 12:32:31,617 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:32:31,627 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 12:32:31,628 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 12:32:31,657 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 12:32:31,657 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 12:32:31,657 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 12:32:31,658 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 12:32:31,658 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 12:32:31,658 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 12:32:31,659 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 12:32:31,659 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 12:32:31,659 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 12:32:31,659 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 12:32:31,659 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 12:32:31,660 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 12:32:31,660 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 12:32:31,660 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 12:32:31,661 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 12:32:31,661 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 12:32:31,662 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 12:32:31,662 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 12:32:31,662 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 12:32:31,662 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 12:32:31,714 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 12:32:31,715 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 12:32:31,879 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 12:32:31,885 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 12:32:31,886 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-08 12:32:31,887 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:32:31 BoogieIcfgContainer [2022-04-08 12:32:31,887 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 12:32:31,889 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 12:32:31,889 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 12:32:31,891 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 12:32:31,892 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 12:32:31" (1/3) ... [2022-04-08 12:32:31,892 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@75c4be47 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:32:31, skipping insertion in model container [2022-04-08 12:32:31,892 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 12:32:31" (2/3) ... [2022-04-08 12:32:31,893 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@75c4be47 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 12:32:31, skipping insertion in model container [2022-04-08 12:32:31,893 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 12:32:31" (3/3) ... [2022-04-08 12:32:31,894 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_valuebound5.c [2022-04-08 12:32:31,898 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 12:32:31,898 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 12:32:31,949 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 12:32:31,954 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 12:32:31,954 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 12:32:32,000 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-08 12:32:32,007 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 12:32:32,007 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:32:32,008 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:32:32,008 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:32:32,026 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:32:32,026 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 1 times [2022-04-08 12:32:32,033 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:32,033 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [406214815] [2022-04-08 12:32:32,045 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:32:32,045 INFO L85 PathProgramCache]: Analyzing trace with hash 1237885594, now seen corresponding path program 2 times [2022-04-08 12:32:32,048 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:32:32,048 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [29819273] [2022-04-08 12:32:32,049 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:32:32,050 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:32:32,169 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:32,239 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 12:32:32,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:32,268 INFO L290 TraceCheckUtils]: 0: Hoare triple {64#(and (= |#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(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-08 12:32:32,268 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-08 12:32:32,269 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-08 12:32:32,269 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 12:32:32,276 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:32,296 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:32:32,297 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:32:32,297 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:32:32,297 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-08 12:32:32,298 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 12:32:32,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:32,304 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:32:32,305 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:32:32,306 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:32:32,306 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-08 12:32:32,306 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 12:32:32,308 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:32,318 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:32:32,319 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:32:32,319 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:32:32,319 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-08 12:32:32,320 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-08 12:32:32,321 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:32,330 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:32:32,331 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:32:32,331 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:32:32,331 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-08 12:32:32,334 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {64#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-08 12:32:32,334 INFO L290 TraceCheckUtils]: 1: Hoare triple {64#(and (= |#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(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-08 12:32:32,335 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-08 12:32:32,335 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #112#return; {43#true} is VALID [2022-04-08 12:32:32,335 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-08 12:32:32,335 INFO L290 TraceCheckUtils]: 5: Hoare triple {43#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {43#true} is VALID [2022-04-08 12:32:32,336 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {43#true} is VALID [2022-04-08 12:32:32,336 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:32:32,337 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:32:32,338 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:32:32,338 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-08 12:32:32,338 INFO L290 TraceCheckUtils]: 11: Hoare triple {44#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {44#false} is VALID [2022-04-08 12:32:32,338 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {43#true} is VALID [2022-04-08 12:32:32,339 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:32:32,339 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:32:32,340 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:32:32,340 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-08 12:32:32,340 INFO L272 TraceCheckUtils]: 17: Hoare triple {44#false} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-08 12:32:32,341 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:32:32,342 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:32:32,342 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:32:32,342 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #98#return; {44#false} is VALID [2022-04-08 12:32:32,343 INFO L272 TraceCheckUtils]: 22: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-08 12:32:32,343 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-08 12:32:32,344 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-08 12:32:32,345 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-08 12:32:32,345 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #100#return; {44#false} is VALID [2022-04-08 12:32:32,346 INFO L290 TraceCheckUtils]: 27: Hoare triple {44#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {44#false} is VALID [2022-04-08 12:32:32,346 INFO L290 TraceCheckUtils]: 28: Hoare triple {44#false} assume false; {44#false} is VALID [2022-04-08 12:32:32,349 INFO L272 TraceCheckUtils]: 29: Hoare triple {44#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {44#false} is VALID [2022-04-08 12:32:32,349 INFO L290 TraceCheckUtils]: 30: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-08 12:32:32,350 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-08 12:32:32,351 INFO L290 TraceCheckUtils]: 32: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-08 12:32:32,351 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 12:32:32,352 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:32:32,352 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [29819273] [2022-04-08 12:32:32,353 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [29819273] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:32,353 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:32,354 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 12:32:32,357 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:32:32,358 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [406214815] [2022-04-08 12:32:32,358 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [406214815] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:32,359 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:32,359 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 12:32:32,359 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [703714205] [2022-04-08 12:32:32,360 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:32:32,366 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-08 12:32:32,368 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:32:32,371 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 12:32:32,412 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:32,412 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 12:32:32,412 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:32,439 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 12:32:32,440 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 12:32:32,444 INFO L87 Difference]: Start difference. First operand has 40 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 11 states have call successors, (11), 4 states have call predecessors, (11), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 12:32:32,671 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:32,671 INFO L93 Difference]: Finished difference Result 73 states and 115 transitions. [2022-04-08 12:32:32,671 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 12:32:32,672 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-08 12:32:32,672 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:32:32,673 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 12:32:32,682 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-08 12:32:32,683 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 12:32:32,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 115 transitions. [2022-04-08 12:32:32,690 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 115 transitions. [2022-04-08 12:32:32,869 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:32,879 INFO L225 Difference]: With dead ends: 73 [2022-04-08 12:32:32,880 INFO L226 Difference]: Without dead ends: 35 [2022-04-08 12:32:32,883 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 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 12:32:32,886 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 24 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:32:32,888 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 43 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:32:32,901 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-08 12:32:32,917 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-08 12:32:32,917 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:32:32,918 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:32:32,919 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:32:32,920 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:32:32,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:32,929 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-08 12:32:32,929 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 12:32:32,930 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:32,930 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:32,931 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 35 states. [2022-04-08 12:32:32,933 INFO L87 Difference]: Start difference. First operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 35 states. [2022-04-08 12:32:32,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:32,939 INFO L93 Difference]: Finished difference Result 35 states and 44 transitions. [2022-04-08 12:32:32,939 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 12:32:32,940 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:32,940 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:32,940 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:32:32,940 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:32:32,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 20 states have (on average 1.2) internal successors, (24), 21 states have internal predecessors, (24), 11 states have call successors, (11), 4 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-08 12:32:32,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 44 transitions. [2022-04-08 12:32:32,943 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 44 transitions. Word has length 33 [2022-04-08 12:32:32,943 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:32:32,943 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 44 transitions. [2022-04-08 12:32:32,944 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 12:32:32,944 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 44 transitions. [2022-04-08 12:32:32,991 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 12:32:32,991 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 44 transitions. [2022-04-08 12:32:32,992 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-08 12:32:32,993 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:32:32,993 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 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 12:32:32,993 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 12:32:32,993 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:32:32,994 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:32:32,994 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 1 times [2022-04-08 12:32:32,994 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:32,994 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [890154837] [2022-04-08 12:32:32,995 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:32:32,995 INFO L85 PathProgramCache]: Analyzing trace with hash 1569470122, now seen corresponding path program 2 times [2022-04-08 12:32:32,995 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:32:32,995 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [118572008] [2022-04-08 12:32:32,995 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:32:32,995 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:32:33,017 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:32:33,017 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [360933175] [2022-04-08 12:32:33,017 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:32:33,018 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:32:33,018 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:32:33,019 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 12:32:33,031 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 12:32:33,072 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 12:32:33,072 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:32:33,074 INFO L263 TraceCheckSpWp]: Trace formula consists of 76 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 12:32:33,092 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:33,095 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:32:33,320 INFO L272 TraceCheckUtils]: 0: Hoare triple {353#true} call ULTIMATE.init(); {353#true} is VALID [2022-04-08 12:32:33,321 INFO L290 TraceCheckUtils]: 1: Hoare triple {353#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(11, 2);call #Ultimate.allocInit(12, 3); {353#true} is VALID [2022-04-08 12:32:33,321 INFO L290 TraceCheckUtils]: 2: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-08 12:32:33,321 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {353#true} {353#true} #112#return; {353#true} is VALID [2022-04-08 12:32:33,321 INFO L272 TraceCheckUtils]: 4: Hoare triple {353#true} call #t~ret6 := main(); {353#true} is VALID [2022-04-08 12:32:33,322 INFO L290 TraceCheckUtils]: 5: Hoare triple {353#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {353#true} is VALID [2022-04-08 12:32:33,322 INFO L272 TraceCheckUtils]: 6: Hoare triple {353#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {353#true} is VALID [2022-04-08 12:32:33,322 INFO L290 TraceCheckUtils]: 7: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-08 12:32:33,322 INFO L290 TraceCheckUtils]: 8: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-08 12:32:33,322 INFO L290 TraceCheckUtils]: 9: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-08 12:32:33,323 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {353#true} {353#true} #94#return; {353#true} is VALID [2022-04-08 12:32:33,323 INFO L290 TraceCheckUtils]: 11: Hoare triple {353#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {353#true} is VALID [2022-04-08 12:32:33,323 INFO L272 TraceCheckUtils]: 12: Hoare triple {353#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {353#true} is VALID [2022-04-08 12:32:33,323 INFO L290 TraceCheckUtils]: 13: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-08 12:32:33,323 INFO L290 TraceCheckUtils]: 14: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-08 12:32:33,323 INFO L290 TraceCheckUtils]: 15: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-08 12:32:33,324 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {353#true} {353#true} #96#return; {353#true} is VALID [2022-04-08 12:32:33,324 INFO L272 TraceCheckUtils]: 17: Hoare triple {353#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {353#true} is VALID [2022-04-08 12:32:33,324 INFO L290 TraceCheckUtils]: 18: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-08 12:32:33,324 INFO L290 TraceCheckUtils]: 19: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-08 12:32:33,324 INFO L290 TraceCheckUtils]: 20: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-08 12:32:33,324 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {353#true} {353#true} #98#return; {353#true} is VALID [2022-04-08 12:32:33,325 INFO L272 TraceCheckUtils]: 22: Hoare triple {353#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {353#true} is VALID [2022-04-08 12:32:33,325 INFO L290 TraceCheckUtils]: 23: Hoare triple {353#true} ~cond := #in~cond; {353#true} is VALID [2022-04-08 12:32:33,325 INFO L290 TraceCheckUtils]: 24: Hoare triple {353#true} assume !(0 == ~cond); {353#true} is VALID [2022-04-08 12:32:33,325 INFO L290 TraceCheckUtils]: 25: Hoare triple {353#true} assume true; {353#true} is VALID [2022-04-08 12:32:33,325 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {353#true} {353#true} #100#return; {353#true} is VALID [2022-04-08 12:32:33,326 INFO L290 TraceCheckUtils]: 27: Hoare triple {353#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:33,326 INFO L290 TraceCheckUtils]: 28: Hoare triple {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:33,327 INFO L290 TraceCheckUtils]: 29: Hoare triple {439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 != ~b~0); {446#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:33,328 INFO L272 TraceCheckUtils]: 30: Hoare triple {446#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {450#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:32:33,329 INFO L290 TraceCheckUtils]: 31: Hoare triple {450#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {454#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:33,329 INFO L290 TraceCheckUtils]: 32: Hoare triple {454#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {354#false} is VALID [2022-04-08 12:32:33,329 INFO L290 TraceCheckUtils]: 33: Hoare triple {354#false} assume !false; {354#false} is VALID [2022-04-08 12:32:33,330 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 12:32:33,330 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:32:33,330 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:32:33,330 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [118572008] [2022-04-08 12:32:33,330 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:32:33,331 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [360933175] [2022-04-08 12:32:33,331 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [360933175] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:33,331 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:33,331 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 12:32:33,332 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:32:33,332 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [890154837] [2022-04-08 12:32:33,332 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [890154837] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:33,332 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:33,332 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 12:32:33,332 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [932018402] [2022-04-08 12:32:33,333 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:32:33,333 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-08 12:32:33,334 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:32:33,334 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 12:32:33,355 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:33,355 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 12:32:33,355 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:33,356 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 12:32:33,356 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 12:32:33,356 INFO L87 Difference]: Start difference. First operand 35 states and 44 transitions. Second operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 12:32:33,681 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:33,681 INFO L93 Difference]: Finished difference Result 54 states and 69 transitions. [2022-04-08 12:32:33,682 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 12:32:33,682 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 34 [2022-04-08 12:32:33,682 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:32:33,683 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 12:32:33,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-08 12:32:33,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 12:32:33,688 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-08 12:32:33,689 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-08 12:32:33,750 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 12:32:33,754 INFO L225 Difference]: With dead ends: 54 [2022-04-08 12:32:33,754 INFO L226 Difference]: Without dead ends: 51 [2022-04-08 12:32:33,755 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-08 12:32:33,757 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 14 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 158 SdHoareTripleChecker+Invalid, 79 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:32:33,760 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 158 Invalid, 79 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:32:33,762 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-08 12:32:33,778 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-08 12:32:33,778 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:32:33,779 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 12:32:33,779 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 12:32:33,780 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 12:32:33,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:33,783 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-08 12:32:33,783 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-08 12:32:33,784 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:33,784 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:33,785 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 51 states. [2022-04-08 12:32:33,785 INFO L87 Difference]: Start difference. First operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 51 states. [2022-04-08 12:32:33,789 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:33,789 INFO L93 Difference]: Finished difference Result 51 states and 65 transitions. [2022-04-08 12:32:33,789 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-08 12:32:33,790 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:33,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:33,790 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:32:33,790 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:32:33,790 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 30 states have (on average 1.2) internal successors, (36), 31 states have internal predecessors, (36), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-08 12:32:33,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 64 transitions. [2022-04-08 12:32:33,793 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 64 transitions. Word has length 34 [2022-04-08 12:32:33,794 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:32:33,794 INFO L478 AbstractCegarLoop]: Abstraction has 50 states and 64 transitions. [2022-04-08 12:32:33,794 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 12:32:33,794 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 64 transitions. [2022-04-08 12:32:33,858 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 12:32:33,859 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-08 12:32:33,860 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-08 12:32:33,860 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:32:33,860 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 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 12:32:33,884 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-08 12:32:34,075 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 12:32:34,078 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:32:34,078 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:32:34,078 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 1 times [2022-04-08 12:32:34,078 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:34,078 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [465539956] [2022-04-08 12:32:34,079 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:32:34,079 INFO L85 PathProgramCache]: Analyzing trace with hash 584996456, now seen corresponding path program 2 times [2022-04-08 12:32:34,079 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:32:34,079 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [757207294] [2022-04-08 12:32:34,080 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:32:34,080 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:32:34,149 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:32:34,149 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [711796767] [2022-04-08 12:32:34,149 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:32:34,149 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:32:34,150 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:32:34,159 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 12:32:34,179 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 12:32:34,219 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:32:34,219 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:32:34,220 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 12:32:34,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:34,234 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:32:34,389 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-08 12:32:34,389 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#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(11, 2);call #Ultimate.allocInit(12, 3); {774#true} is VALID [2022-04-08 12:32:34,389 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 12:32:34,390 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-08 12:32:34,390 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-08 12:32:34,390 INFO L290 TraceCheckUtils]: 5: Hoare triple {774#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {774#true} is VALID [2022-04-08 12:32:34,390 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {774#true} is VALID [2022-04-08 12:32:34,390 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 12:32:34,390 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 12:32:34,393 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 12:32:34,393 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-08 12:32:34,393 INFO L290 TraceCheckUtils]: 11: Hoare triple {774#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {774#true} is VALID [2022-04-08 12:32:34,394 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {774#true} is VALID [2022-04-08 12:32:34,394 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 12:32:34,394 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 12:32:34,396 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 12:32:34,397 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-08 12:32:34,397 INFO L272 TraceCheckUtils]: 17: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-08 12:32:34,397 INFO L290 TraceCheckUtils]: 18: Hoare triple {774#true} ~cond := #in~cond; {833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:32:34,398 INFO L290 TraceCheckUtils]: 19: Hoare triple {833#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:34,399 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:34,404 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {837#(not (= |assume_abort_if_not_#in~cond| 0))} {774#true} #98#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-08 12:32:34,404 INFO L272 TraceCheckUtils]: 22: Hoare triple {844#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-08 12:32:34,405 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 12:32:34,405 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 12:32:34,405 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 12:32:34,406 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {774#true} {844#(<= 1 main_~x~0)} #100#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-08 12:32:34,406 INFO L290 TraceCheckUtils]: 27: Hoare triple {844#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {863#(<= 1 main_~a~0)} is VALID [2022-04-08 12:32:34,408 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-08 12:32:34,408 INFO L290 TraceCheckUtils]: 29: Hoare triple {863#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {870#(<= 1 main_~c~0)} is VALID [2022-04-08 12:32:34,409 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-08 12:32:34,411 INFO L290 TraceCheckUtils]: 31: Hoare triple {870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {870#(<= 1 main_~c~0)} is VALID [2022-04-08 12:32:34,412 INFO L290 TraceCheckUtils]: 32: Hoare triple {870#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {880#(<= 1 main_~b~0)} is VALID [2022-04-08 12:32:34,424 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-08 12:32:34,425 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-08 12:32:34,425 INFO L272 TraceCheckUtils]: 35: Hoare triple {775#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {775#false} is VALID [2022-04-08 12:32:34,425 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-08 12:32:34,425 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-08 12:32:34,425 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-08 12:32:34,426 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-08 12:32:34,426 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:32:34,685 INFO L290 TraceCheckUtils]: 38: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-08 12:32:34,686 INFO L290 TraceCheckUtils]: 37: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-08 12:32:34,686 INFO L290 TraceCheckUtils]: 36: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-08 12:32:34,686 INFO L272 TraceCheckUtils]: 35: Hoare triple {775#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {775#false} is VALID [2022-04-08 12:32:34,687 INFO L290 TraceCheckUtils]: 34: Hoare triple {880#(<= 1 main_~b~0)} assume !(0 != ~b~0); {775#false} is VALID [2022-04-08 12:32:34,687 INFO L290 TraceCheckUtils]: 33: Hoare triple {880#(<= 1 main_~b~0)} assume !false; {880#(<= 1 main_~b~0)} is VALID [2022-04-08 12:32:34,688 INFO L290 TraceCheckUtils]: 32: Hoare triple {870#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {880#(<= 1 main_~b~0)} is VALID [2022-04-08 12:32:34,688 INFO L290 TraceCheckUtils]: 31: Hoare triple {870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {870#(<= 1 main_~c~0)} is VALID [2022-04-08 12:32:34,688 INFO L290 TraceCheckUtils]: 30: Hoare triple {870#(<= 1 main_~c~0)} assume !false; {870#(<= 1 main_~c~0)} is VALID [2022-04-08 12:32:34,689 INFO L290 TraceCheckUtils]: 29: Hoare triple {863#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {870#(<= 1 main_~c~0)} is VALID [2022-04-08 12:32:34,689 INFO L290 TraceCheckUtils]: 28: Hoare triple {863#(<= 1 main_~a~0)} assume !false; {863#(<= 1 main_~a~0)} is VALID [2022-04-08 12:32:34,690 INFO L290 TraceCheckUtils]: 27: Hoare triple {844#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {863#(<= 1 main_~a~0)} is VALID [2022-04-08 12:32:34,690 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {774#true} {844#(<= 1 main_~x~0)} #100#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-08 12:32:34,692 INFO L290 TraceCheckUtils]: 25: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 12:32:34,693 INFO L290 TraceCheckUtils]: 24: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 12:32:34,693 INFO L290 TraceCheckUtils]: 23: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 12:32:34,693 INFO L272 TraceCheckUtils]: 22: Hoare triple {844#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-08 12:32:34,694 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {837#(not (= |assume_abort_if_not_#in~cond| 0))} {774#true} #98#return; {844#(<= 1 main_~x~0)} is VALID [2022-04-08 12:32:34,694 INFO L290 TraceCheckUtils]: 20: Hoare triple {837#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:34,694 INFO L290 TraceCheckUtils]: 19: Hoare triple {959#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {837#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:34,695 INFO L290 TraceCheckUtils]: 18: Hoare triple {774#true} ~cond := #in~cond; {959#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-08 12:32:34,695 INFO L272 TraceCheckUtils]: 17: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {774#true} is VALID [2022-04-08 12:32:34,695 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {774#true} {774#true} #96#return; {774#true} is VALID [2022-04-08 12:32:34,695 INFO L290 TraceCheckUtils]: 15: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 12:32:34,696 INFO L290 TraceCheckUtils]: 14: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 12:32:34,696 INFO L290 TraceCheckUtils]: 13: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 12:32:34,696 INFO L272 TraceCheckUtils]: 12: Hoare triple {774#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {774#true} is VALID [2022-04-08 12:32:34,696 INFO L290 TraceCheckUtils]: 11: Hoare triple {774#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {774#true} is VALID [2022-04-08 12:32:34,696 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #94#return; {774#true} is VALID [2022-04-08 12:32:34,696 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 12:32:34,696 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-08 12:32:34,697 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-08 12:32:34,697 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {774#true} is VALID [2022-04-08 12:32:34,697 INFO L290 TraceCheckUtils]: 5: Hoare triple {774#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {774#true} is VALID [2022-04-08 12:32:34,697 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret6 := main(); {774#true} is VALID [2022-04-08 12:32:34,697 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #112#return; {774#true} is VALID [2022-04-08 12:32:34,697 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-08 12:32:34,698 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#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(11, 2);call #Ultimate.allocInit(12, 3); {774#true} is VALID [2022-04-08 12:32:34,698 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {774#true} is VALID [2022-04-08 12:32:34,699 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 6 proven. 5 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-08 12:32:34,699 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:32:34,699 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [757207294] [2022-04-08 12:32:34,699 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:32:34,699 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [711796767] [2022-04-08 12:32:34,699 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [711796767] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:32:34,699 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:32:34,699 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 12:32:34,700 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:32:34,700 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [465539956] [2022-04-08 12:32:34,700 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [465539956] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:34,700 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:34,700 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 12:32:34,700 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [763801206] [2022-04-08 12:32:34,700 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:32:34,701 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-08 12:32:34,702 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:32:34,703 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 12:32:34,727 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:34,727 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 12:32:34,727 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:34,727 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 12:32:34,728 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-08 12:32:34,728 INFO L87 Difference]: Start difference. First operand 50 states and 64 transitions. Second operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 12:32:35,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:35,482 INFO L93 Difference]: Finished difference Result 103 states and 143 transitions. [2022-04-08 12:32:35,482 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 12:32:35,482 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-08 12:32:35,482 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:32:35,482 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 12:32:35,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-08 12:32:35,486 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 12:32:35,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-08 12:32:35,490 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 108 transitions. [2022-04-08 12:32:35,585 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 12:32:35,588 INFO L225 Difference]: With dead ends: 103 [2022-04-08 12:32:35,588 INFO L226 Difference]: Without dead ends: 96 [2022-04-08 12:32:35,589 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:32:35,590 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 68 mSDsluCounter, 182 mSDsCounter, 0 mSdLazyCounter, 148 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 232 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 148 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:32:35,590 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 232 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 148 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 12:32:35,591 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-04-08 12:32:35,671 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 71. [2022-04-08 12:32:35,671 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:32:35,672 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 12:32:35,672 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 12:32:35,673 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 12:32:35,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:35,683 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-08 12:32:35,683 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-08 12:32:35,684 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:35,684 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:35,684 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 96 states. [2022-04-08 12:32:35,685 INFO L87 Difference]: Start difference. First operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) Second operand 96 states. [2022-04-08 12:32:35,690 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:35,690 INFO L93 Difference]: Finished difference Result 96 states and 136 transitions. [2022-04-08 12:32:35,690 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 136 transitions. [2022-04-08 12:32:35,691 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:35,691 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:35,691 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:32:35,692 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:32:35,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 47 states have (on average 1.2553191489361701) internal successors, (59), 48 states have internal predecessors, (59), 19 states have call successors, (19), 5 states have call predecessors, (19), 4 states have return successors, (17), 17 states have call predecessors, (17), 17 states have call successors, (17) [2022-04-08 12:32:35,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 95 transitions. [2022-04-08 12:32:35,710 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 95 transitions. Word has length 39 [2022-04-08 12:32:35,710 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:32:35,710 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 95 transitions. [2022-04-08 12:32:35,710 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.625) internal successors, (21), 7 states have internal predecessors, (21), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-08 12:32:35,710 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 95 transitions. [2022-04-08 12:32:35,830 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:35,830 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 95 transitions. [2022-04-08 12:32:35,831 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-08 12:32:35,831 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:32:35,831 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 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 12:32:35,857 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 12:32:36,053 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 12:32:36,053 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:32:36,054 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:32:36,054 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 1 times [2022-04-08 12:32:36,054 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:36,054 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [462815421] [2022-04-08 12:32:36,055 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:32:36,055 INFO L85 PathProgramCache]: Analyzing trace with hash -974923140, now seen corresponding path program 2 times [2022-04-08 12:32:36,055 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:32:36,055 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1613401320] [2022-04-08 12:32:36,055 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:32:36,055 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:32:36,082 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:32:36,082 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1225989945] [2022-04-08 12:32:36,082 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:32:36,083 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:32:36,083 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:32:36,084 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 12:32:36,099 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 12:32:36,150 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:32:36,150 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:32:36,151 INFO L263 TraceCheckSpWp]: Trace formula consists of 139 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-08 12:32:36,170 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:36,171 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:32:36,772 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-08 12:32:36,772 INFO L290 TraceCheckUtils]: 1: Hoare triple {1566#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(11, 2);call #Ultimate.allocInit(12, 3); {1566#true} is VALID [2022-04-08 12:32:36,773 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 12:32:36,773 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-08 12:32:36,773 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-08 12:32:36,773 INFO L290 TraceCheckUtils]: 5: Hoare triple {1566#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1566#true} is VALID [2022-04-08 12:32:36,773 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {1566#true} is VALID [2022-04-08 12:32:36,773 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 12:32:36,773 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 12:32:36,774 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 12:32:36,774 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-08 12:32:36,774 INFO L290 TraceCheckUtils]: 11: Hoare triple {1566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1566#true} is VALID [2022-04-08 12:32:36,774 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {1566#true} is VALID [2022-04-08 12:32:36,774 INFO L290 TraceCheckUtils]: 13: Hoare triple {1566#true} ~cond := #in~cond; {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:32:36,775 INFO L290 TraceCheckUtils]: 14: Hoare triple {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:36,775 INFO L290 TraceCheckUtils]: 15: Hoare triple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:36,776 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} {1566#true} #96#return; {1621#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:36,776 INFO L272 TraceCheckUtils]: 17: Hoare triple {1621#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-08 12:32:36,777 INFO L290 TraceCheckUtils]: 18: Hoare triple {1566#true} ~cond := #in~cond; {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:32:36,777 INFO L290 TraceCheckUtils]: 19: Hoare triple {1610#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:36,778 INFO L290 TraceCheckUtils]: 20: Hoare triple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1614#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:36,778 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1614#(not (= |assume_abort_if_not_#in~cond| 0))} {1621#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #98#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:36,778 INFO L272 TraceCheckUtils]: 22: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-08 12:32:36,779 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 12:32:36,779 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 12:32:36,779 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 12:32:36,779 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 5))} #100#return; {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:36,780 INFO L290 TraceCheckUtils]: 27: Hoare triple {1637#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (<= main_~y~0 5))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:36,780 INFO L290 TraceCheckUtils]: 28: Hoare triple {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} assume !false; {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:36,781 INFO L290 TraceCheckUtils]: 29: Hoare triple {1656#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:32:36,781 INFO L290 TraceCheckUtils]: 30: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} assume !false; {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:32:36,782 INFO L290 TraceCheckUtils]: 31: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:32:36,783 INFO L290 TraceCheckUtils]: 32: Hoare triple {1663#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:36,783 INFO L290 TraceCheckUtils]: 33: Hoare triple {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !false; {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:36,784 INFO L290 TraceCheckUtils]: 34: Hoare triple {1673#(and (<= 0 main_~y~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:36,787 INFO L290 TraceCheckUtils]: 35: Hoare triple {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !false; {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:36,788 INFO L290 TraceCheckUtils]: 36: Hoare triple {1680#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:36,788 INFO L290 TraceCheckUtils]: 37: Hoare triple {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 5))} assume !false; {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:36,789 INFO L272 TraceCheckUtils]: 38: Hoare triple {1687#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (<= main_~x~0 main_~a~0) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:32:36,790 INFO L290 TraceCheckUtils]: 39: Hoare triple {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1698#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:36,790 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-08 12:32:36,790 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-08 12:32:36,791 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 6 proven. 10 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-08 12:32:36,791 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:32:37,243 INFO L290 TraceCheckUtils]: 41: Hoare triple {1567#false} assume !false; {1567#false} is VALID [2022-04-08 12:32:37,244 INFO L290 TraceCheckUtils]: 40: Hoare triple {1698#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1567#false} is VALID [2022-04-08 12:32:37,244 INFO L290 TraceCheckUtils]: 39: Hoare triple {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1698#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:37,245 INFO L272 TraceCheckUtils]: 38: Hoare triple {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1694#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:32:37,246 INFO L290 TraceCheckUtils]: 37: Hoare triple {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:32:37,246 INFO L290 TraceCheckUtils]: 36: Hoare triple {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1714#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:32:37,247 INFO L290 TraceCheckUtils]: 35: Hoare triple {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} assume !false; {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 12:32:37,247 INFO L290 TraceCheckUtils]: 34: Hoare triple {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1721#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-08 12:32:37,248 INFO L290 TraceCheckUtils]: 33: Hoare triple {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:32:37,249 INFO L290 TraceCheckUtils]: 32: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1728#(or (not (<= main_~b~0 main_~a~0)) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:32:37,249 INFO L290 TraceCheckUtils]: 31: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:32:37,250 INFO L290 TraceCheckUtils]: 30: Hoare triple {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:32:37,250 INFO L290 TraceCheckUtils]: 29: Hoare triple {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1735#(or (not (<= main_~c~0 main_~b~0)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:32:37,250 INFO L290 TraceCheckUtils]: 28: Hoare triple {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} assume !false; {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} is VALID [2022-04-08 12:32:37,251 INFO L290 TraceCheckUtils]: 27: Hoare triple {1566#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1745#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (<= main_~a~0 main_~b~0)))} is VALID [2022-04-08 12:32:37,251 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1566#true} {1566#true} #100#return; {1566#true} is VALID [2022-04-08 12:32:37,251 INFO L290 TraceCheckUtils]: 25: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 12:32:37,251 INFO L290 TraceCheckUtils]: 24: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 12:32:37,252 INFO L290 TraceCheckUtils]: 23: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 12:32:37,252 INFO L272 TraceCheckUtils]: 22: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-08 12:32:37,252 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1566#true} {1566#true} #98#return; {1566#true} is VALID [2022-04-08 12:32:37,252 INFO L290 TraceCheckUtils]: 20: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 12:32:37,252 INFO L290 TraceCheckUtils]: 19: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 12:32:37,252 INFO L290 TraceCheckUtils]: 18: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 12:32:37,252 INFO L272 TraceCheckUtils]: 17: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1566#true} is VALID [2022-04-08 12:32:37,253 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1566#true} {1566#true} #96#return; {1566#true} is VALID [2022-04-08 12:32:37,253 INFO L290 TraceCheckUtils]: 15: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 12:32:37,253 INFO L290 TraceCheckUtils]: 14: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 12:32:37,253 INFO L290 TraceCheckUtils]: 13: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 12:32:37,253 INFO L272 TraceCheckUtils]: 12: Hoare triple {1566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {1566#true} is VALID [2022-04-08 12:32:37,254 INFO L290 TraceCheckUtils]: 11: Hoare triple {1566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1566#true} is VALID [2022-04-08 12:32:37,254 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1566#true} {1566#true} #94#return; {1566#true} is VALID [2022-04-08 12:32:37,254 INFO L290 TraceCheckUtils]: 9: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 12:32:37,254 INFO L290 TraceCheckUtils]: 8: Hoare triple {1566#true} assume !(0 == ~cond); {1566#true} is VALID [2022-04-08 12:32:37,254 INFO L290 TraceCheckUtils]: 7: Hoare triple {1566#true} ~cond := #in~cond; {1566#true} is VALID [2022-04-08 12:32:37,254 INFO L272 TraceCheckUtils]: 6: Hoare triple {1566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {1566#true} is VALID [2022-04-08 12:32:37,260 INFO L290 TraceCheckUtils]: 5: Hoare triple {1566#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1566#true} is VALID [2022-04-08 12:32:37,260 INFO L272 TraceCheckUtils]: 4: Hoare triple {1566#true} call #t~ret6 := main(); {1566#true} is VALID [2022-04-08 12:32:37,261 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1566#true} {1566#true} #112#return; {1566#true} is VALID [2022-04-08 12:32:37,262 INFO L290 TraceCheckUtils]: 2: Hoare triple {1566#true} assume true; {1566#true} is VALID [2022-04-08 12:32:37,265 INFO L290 TraceCheckUtils]: 1: Hoare triple {1566#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(11, 2);call #Ultimate.allocInit(12, 3); {1566#true} is VALID [2022-04-08 12:32:37,265 INFO L272 TraceCheckUtils]: 0: Hoare triple {1566#true} call ULTIMATE.init(); {1566#true} is VALID [2022-04-08 12:32:37,266 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 12:32:37,266 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:32:37,266 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1613401320] [2022-04-08 12:32:37,266 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:32:37,266 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1225989945] [2022-04-08 12:32:37,266 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1225989945] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:32:37,266 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:32:37,266 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 9] total 18 [2022-04-08 12:32:37,267 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:32:37,267 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [462815421] [2022-04-08 12:32:37,267 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [462815421] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:37,267 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:37,267 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 12:32:37,267 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [800911850] [2022-04-08 12:32:37,267 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:32:37,270 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 42 [2022-04-08 12:32:37,271 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:32:37,271 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 12:32:37,299 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:37,299 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 12:32:37,299 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:37,299 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 12:32:37,300 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=246, Unknown=0, NotChecked=0, Total=306 [2022-04-08 12:32:37,300 INFO L87 Difference]: Start difference. First operand 71 states and 95 transitions. Second operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 12:32:38,798 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:38,799 INFO L93 Difference]: Finished difference Result 112 states and 151 transitions. [2022-04-08 12:32:38,799 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 12:32:38,799 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 42 [2022-04-08 12:32:38,799 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:32:38,800 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 12:32:38,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-08 12:32:38,803 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 12:32:38,806 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 117 transitions. [2022-04-08 12:32:38,806 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 117 transitions. [2022-04-08 12:32:38,923 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:38,926 INFO L225 Difference]: With dead ends: 112 [2022-04-08 12:32:38,926 INFO L226 Difference]: Without dead ends: 110 [2022-04-08 12:32:38,927 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 66 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 81 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=96, Invalid=410, Unknown=0, NotChecked=0, Total=506 [2022-04-08 12:32:38,927 INFO L913 BasicCegarLoop]: 52 mSDtfsCounter, 89 mSDsluCounter, 193 mSDsCounter, 0 mSdLazyCounter, 358 mSolverCounterSat, 56 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 98 SdHoareTripleChecker+Valid, 245 SdHoareTripleChecker+Invalid, 414 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 56 IncrementalHoareTripleChecker+Valid, 358 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-08 12:32:38,928 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [98 Valid, 245 Invalid, 414 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [56 Valid, 358 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-08 12:32:38,928 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states. [2022-04-08 12:32:39,127 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 93. [2022-04-08 12:32:39,127 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:32:39,128 INFO L82 GeneralOperation]: Start isEquivalent. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 12:32:39,128 INFO L74 IsIncluded]: Start isIncluded. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 12:32:39,129 INFO L87 Difference]: Start difference. First operand 110 states. Second operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 12:32:39,134 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:39,134 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-08 12:32:39,134 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-08 12:32:39,135 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:39,135 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:39,135 INFO L74 IsIncluded]: Start isIncluded. First operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 110 states. [2022-04-08 12:32:39,136 INFO L87 Difference]: Start difference. First operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) Second operand 110 states. [2022-04-08 12:32:39,140 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:39,140 INFO L93 Difference]: Finished difference Result 110 states and 149 transitions. [2022-04-08 12:32:39,141 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 149 transitions. [2022-04-08 12:32:39,141 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:39,141 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:39,141 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:32:39,141 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:32:39,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 93 states, 63 states have (on average 1.2380952380952381) internal successors, (78), 64 states have internal predecessors, (78), 23 states have call successors, (23), 7 states have call predecessors, (23), 6 states have return successors, (21), 21 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-08 12:32:39,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 93 states to 93 states and 122 transitions. [2022-04-08 12:32:39,145 INFO L78 Accepts]: Start accepts. Automaton has 93 states and 122 transitions. Word has length 42 [2022-04-08 12:32:39,145 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:32:39,146 INFO L478 AbstractCegarLoop]: Abstraction has 93 states and 122 transitions. [2022-04-08 12:32:39,146 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.0) internal successors, (24), 10 states have internal predecessors, (24), 4 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-08 12:32:39,146 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 93 states and 122 transitions. [2022-04-08 12:32:39,285 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:39,285 INFO L276 IsEmpty]: Start isEmpty. Operand 93 states and 122 transitions. [2022-04-08 12:32:39,286 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-08 12:32:39,286 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:32:39,287 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 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, 1, 1, 1, 1] [2022-04-08 12:32:39,303 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-08 12:32:39,487 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 12:32:39,487 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:32:39,488 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:32:39,488 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 1 times [2022-04-08 12:32:39,488 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:39,488 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1357763019] [2022-04-08 12:32:39,488 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:32:39,489 INFO L85 PathProgramCache]: Analyzing trace with hash 81990170, now seen corresponding path program 2 times [2022-04-08 12:32:39,489 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:32:39,489 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1415512122] [2022-04-08 12:32:39,489 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:32:39,489 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:32:39,515 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:32:39,515 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1689243900] [2022-04-08 12:32:39,515 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:32:39,516 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:32:39,516 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:32:39,518 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 12:32:39,519 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 12:32:39,565 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:32:39,566 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:32:39,567 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-08 12:32:39,581 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:39,582 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:32:39,934 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-08 12:32:39,934 INFO L290 TraceCheckUtils]: 1: Hoare triple {2475#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(11, 2);call #Ultimate.allocInit(12, 3); {2475#true} is VALID [2022-04-08 12:32:39,934 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:39,934 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-08 12:32:39,934 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-08 12:32:39,935 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2475#true} is VALID [2022-04-08 12:32:39,935 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:39,935 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 12:32:39,935 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 12:32:39,935 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:39,935 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-08 12:32:39,935 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2475#true} is VALID [2022-04-08 12:32:39,936 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:39,936 INFO L290 TraceCheckUtils]: 13: Hoare triple {2475#true} ~cond := #in~cond; {2519#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:32:39,936 INFO L290 TraceCheckUtils]: 14: Hoare triple {2519#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2523#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:39,937 INFO L290 TraceCheckUtils]: 15: Hoare triple {2523#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2523#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:32:39,937 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2523#(not (= |assume_abort_if_not_#in~cond| 0))} {2475#true} #96#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:39,937 INFO L272 TraceCheckUtils]: 17: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:39,937 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 12:32:39,937 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 12:32:39,937 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:39,938 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #98#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:39,938 INFO L272 TraceCheckUtils]: 22: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:39,938 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 12:32:39,938 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 12:32:39,938 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:39,939 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #100#return; {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:32:39,939 INFO L290 TraceCheckUtils]: 27: Hoare triple {2530#(and (<= 0 main_~y~0) (<= main_~y~0 5))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2564#(<= 0 main_~b~0)} is VALID [2022-04-08 12:32:39,939 INFO L290 TraceCheckUtils]: 28: Hoare triple {2564#(<= 0 main_~b~0)} assume !false; {2564#(<= 0 main_~b~0)} is VALID [2022-04-08 12:32:39,940 INFO L290 TraceCheckUtils]: 29: Hoare triple {2564#(<= 0 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:32:39,940 INFO L290 TraceCheckUtils]: 30: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:32:39,941 INFO L290 TraceCheckUtils]: 31: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:32:39,941 INFO L290 TraceCheckUtils]: 32: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:32:39,941 INFO L272 TraceCheckUtils]: 33: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:39,941 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 12:32:39,941 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 12:32:39,941 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:39,942 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2475#true} {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #102#return; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:32:39,942 INFO L272 TraceCheckUtils]: 38: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:39,942 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 12:32:39,942 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 12:32:39,942 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:39,943 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2475#true} {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #104#return; {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:32:39,944 INFO L272 TraceCheckUtils]: 43: Hoare triple {2571#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:32:39,944 INFO L290 TraceCheckUtils]: 44: Hoare triple {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:39,944 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-08 12:32:39,944 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-08 12:32:39,945 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 7 proven. 6 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-08 12:32:39,945 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:32:40,192 INFO L290 TraceCheckUtils]: 46: Hoare triple {2476#false} assume !false; {2476#false} is VALID [2022-04-08 12:32:40,193 INFO L290 TraceCheckUtils]: 45: Hoare triple {2618#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2476#false} is VALID [2022-04-08 12:32:40,193 INFO L290 TraceCheckUtils]: 44: Hoare triple {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2618#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:40,194 INFO L272 TraceCheckUtils]: 43: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2614#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:32:40,195 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {2475#true} {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #104#return; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 12:32:40,195 INFO L290 TraceCheckUtils]: 41: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:40,195 INFO L290 TraceCheckUtils]: 40: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 12:32:40,195 INFO L290 TraceCheckUtils]: 39: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 12:32:40,195 INFO L272 TraceCheckUtils]: 38: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:40,197 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2475#true} {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #102#return; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 12:32:40,197 INFO L290 TraceCheckUtils]: 36: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:40,197 INFO L290 TraceCheckUtils]: 35: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 12:32:40,197 INFO L290 TraceCheckUtils]: 34: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 12:32:40,198 INFO L272 TraceCheckUtils]: 33: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:40,198 INFO L290 TraceCheckUtils]: 32: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 12:32:40,199 INFO L290 TraceCheckUtils]: 31: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 12:32:40,199 INFO L290 TraceCheckUtils]: 30: Hoare triple {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 12:32:40,200 INFO L290 TraceCheckUtils]: 29: Hoare triple {2475#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2634#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-08 12:32:40,200 INFO L290 TraceCheckUtils]: 28: Hoare triple {2475#true} assume !false; {2475#true} is VALID [2022-04-08 12:32:40,200 INFO L290 TraceCheckUtils]: 27: Hoare triple {2475#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2475#true} is VALID [2022-04-08 12:32:40,200 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2475#true} {2475#true} #100#return; {2475#true} is VALID [2022-04-08 12:32:40,200 INFO L290 TraceCheckUtils]: 25: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:40,200 INFO L290 TraceCheckUtils]: 24: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 12:32:40,200 INFO L290 TraceCheckUtils]: 23: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 12:32:40,200 INFO L272 TraceCheckUtils]: 22: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:40,200 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2475#true} {2475#true} #98#return; {2475#true} is VALID [2022-04-08 12:32:40,201 INFO L290 TraceCheckUtils]: 20: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:40,201 INFO L290 TraceCheckUtils]: 19: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 12:32:40,201 INFO L290 TraceCheckUtils]: 18: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 12:32:40,201 INFO L272 TraceCheckUtils]: 17: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:40,201 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2475#true} {2475#true} #96#return; {2475#true} is VALID [2022-04-08 12:32:40,201 INFO L290 TraceCheckUtils]: 15: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:40,201 INFO L290 TraceCheckUtils]: 14: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 12:32:40,201 INFO L290 TraceCheckUtils]: 13: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 12:32:40,201 INFO L272 TraceCheckUtils]: 12: Hoare triple {2475#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:40,202 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2475#true} is VALID [2022-04-08 12:32:40,202 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2475#true} {2475#true} #94#return; {2475#true} is VALID [2022-04-08 12:32:40,202 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:40,202 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#true} assume !(0 == ~cond); {2475#true} is VALID [2022-04-08 12:32:40,202 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#true} ~cond := #in~cond; {2475#true} is VALID [2022-04-08 12:32:40,202 INFO L272 TraceCheckUtils]: 6: Hoare triple {2475#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {2475#true} is VALID [2022-04-08 12:32:40,202 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2475#true} is VALID [2022-04-08 12:32:40,202 INFO L272 TraceCheckUtils]: 4: Hoare triple {2475#true} call #t~ret6 := main(); {2475#true} is VALID [2022-04-08 12:32:40,202 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2475#true} {2475#true} #112#return; {2475#true} is VALID [2022-04-08 12:32:40,202 INFO L290 TraceCheckUtils]: 2: Hoare triple {2475#true} assume true; {2475#true} is VALID [2022-04-08 12:32:40,203 INFO L290 TraceCheckUtils]: 1: Hoare triple {2475#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(11, 2);call #Ultimate.allocInit(12, 3); {2475#true} is VALID [2022-04-08 12:32:40,203 INFO L272 TraceCheckUtils]: 0: Hoare triple {2475#true} call ULTIMATE.init(); {2475#true} is VALID [2022-04-08 12:32:40,203 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-08 12:32:40,203 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:32:40,203 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1415512122] [2022-04-08 12:32:40,203 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:32:40,203 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1689243900] [2022-04-08 12:32:40,204 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1689243900] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 12:32:40,204 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 12:32:40,204 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-08 12:32:40,204 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:32:40,204 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1357763019] [2022-04-08 12:32:40,204 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1357763019] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:40,204 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:40,204 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:32:40,205 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [277728415] [2022-04-08 12:32:40,205 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:32:40,205 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-08 12:32:40,205 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:32:40,206 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 12:32:40,235 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:40,235 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 12:32:40,235 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:40,236 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 12:32:40,236 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-04-08 12:32:40,236 INFO L87 Difference]: Start difference. First operand 93 states and 122 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 12:32:40,680 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:40,680 INFO L93 Difference]: Finished difference Result 130 states and 179 transitions. [2022-04-08 12:32:40,680 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 12:32:40,680 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 47 [2022-04-08 12:32:40,682 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:32:40,682 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 12:32:40,685 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 12:32:40,685 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 12:32:40,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 12:32:40,687 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-08 12:32:40,746 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:40,749 INFO L225 Difference]: With dead ends: 130 [2022-04-08 12:32:40,750 INFO L226 Difference]: Without dead ends: 128 [2022-04-08 12:32:40,750 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 84 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-08 12:32:40,754 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 8 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:32:40,754 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 141 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:32:40,755 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-08 12:32:41,017 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 123. [2022-04-08 12:32:41,017 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:32:41,018 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 12:32:41,018 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 12:32:41,019 INFO L87 Difference]: Start difference. First operand 128 states. Second operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 12:32:41,024 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:41,024 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-08 12:32:41,024 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-08 12:32:41,024 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:41,025 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:41,025 INFO L74 IsIncluded]: Start isIncluded. First operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 128 states. [2022-04-08 12:32:41,025 INFO L87 Difference]: Start difference. First operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 128 states. [2022-04-08 12:32:41,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:41,031 INFO L93 Difference]: Finished difference Result 128 states and 177 transitions. [2022-04-08 12:32:41,031 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 177 transitions. [2022-04-08 12:32:41,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:41,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:41,032 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:32:41,032 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:32:41,032 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 123 states, 76 states have (on average 1.263157894736842) internal successors, (96), 77 states have internal predecessors, (96), 39 states have call successors, (39), 8 states have call predecessors, (39), 7 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 12:32:41,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 123 states to 123 states and 172 transitions. [2022-04-08 12:32:41,037 INFO L78 Accepts]: Start accepts. Automaton has 123 states and 172 transitions. Word has length 47 [2022-04-08 12:32:41,037 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:32:41,037 INFO L478 AbstractCegarLoop]: Abstraction has 123 states and 172 transitions. [2022-04-08 12:32:41,038 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-08 12:32:41,038 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 123 states and 172 transitions. [2022-04-08 12:32:41,263 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 12:32:41,263 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states and 172 transitions. [2022-04-08 12:32:41,264 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-08 12:32:41,264 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:32:41,264 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 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] [2022-04-08 12:32:41,287 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 12:32:41,464 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 12:32:41,464 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:32:41,465 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:32:41,465 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 1 times [2022-04-08 12:32:41,465 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:41,465 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [435487943] [2022-04-08 12:32:41,466 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:32:41,466 INFO L85 PathProgramCache]: Analyzing trace with hash 1524769911, now seen corresponding path program 2 times [2022-04-08 12:32:41,466 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:32:41,466 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1360082529] [2022-04-08 12:32:41,466 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:32:41,466 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:32:41,481 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:32:41,481 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [387958750] [2022-04-08 12:32:41,481 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:32:41,481 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:32:41,481 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:32:41,482 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 12:32:41,484 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 12:32:41,524 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:32:41,524 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:32:41,525 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 35 conjunts are in the unsatisfiable core [2022-04-08 12:32:41,540 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:41,541 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:32:41,864 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-08 12:32:41,864 INFO L290 TraceCheckUtils]: 1: Hoare triple {3530#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(11, 2);call #Ultimate.allocInit(12, 3); {3530#true} is VALID [2022-04-08 12:32:41,864 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:41,864 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-08 12:32:41,864 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-08 12:32:41,864 INFO L290 TraceCheckUtils]: 5: Hoare triple {3530#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3530#true} is VALID [2022-04-08 12:32:41,864 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {3530#true} is VALID [2022-04-08 12:32:41,864 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 12:32:41,865 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 12:32:41,865 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:41,865 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-08 12:32:41,865 INFO L290 TraceCheckUtils]: 11: Hoare triple {3530#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3530#true} is VALID [2022-04-08 12:32:41,865 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {3530#true} is VALID [2022-04-08 12:32:41,865 INFO L290 TraceCheckUtils]: 13: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 12:32:41,865 INFO L290 TraceCheckUtils]: 14: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 12:32:41,865 INFO L290 TraceCheckUtils]: 15: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:41,865 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3530#true} {3530#true} #96#return; {3530#true} is VALID [2022-04-08 12:32:41,865 INFO L272 TraceCheckUtils]: 17: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-08 12:32:41,866 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 12:32:41,866 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 12:32:41,866 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:41,866 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3530#true} #98#return; {3530#true} is VALID [2022-04-08 12:32:41,866 INFO L272 TraceCheckUtils]: 22: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-08 12:32:41,866 INFO L290 TraceCheckUtils]: 23: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 12:32:41,866 INFO L290 TraceCheckUtils]: 24: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 12:32:41,866 INFO L290 TraceCheckUtils]: 25: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:41,866 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3530#true} {3530#true} #100#return; {3530#true} is VALID [2022-04-08 12:32:41,867 INFO L290 TraceCheckUtils]: 27: Hoare triple {3530#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3616#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:41,867 INFO L290 TraceCheckUtils]: 28: Hoare triple {3616#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {3616#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:41,868 INFO L290 TraceCheckUtils]: 29: Hoare triple {3616#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:41,869 INFO L290 TraceCheckUtils]: 30: Hoare triple {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:41,869 INFO L290 TraceCheckUtils]: 31: Hoare triple {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:41,871 INFO L290 TraceCheckUtils]: 32: Hoare triple {3623#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3633#(and (= main_~s~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:32:41,873 INFO L290 TraceCheckUtils]: 33: Hoare triple {3633#(and (= main_~s~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {3633#(and (= main_~s~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:32:41,874 INFO L290 TraceCheckUtils]: 34: Hoare triple {3633#(and (= main_~s~0 0) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:32:41,875 INFO L290 TraceCheckUtils]: 35: Hoare triple {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:32:41,875 INFO L290 TraceCheckUtils]: 36: Hoare triple {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:32:41,876 INFO L290 TraceCheckUtils]: 37: Hoare triple {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:32:41,876 INFO L272 TraceCheckUtils]: 38: Hoare triple {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3530#true} is VALID [2022-04-08 12:32:41,876 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 12:32:41,876 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 12:32:41,876 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:41,880 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3530#true} {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #102#return; {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-08 12:32:41,880 INFO L272 TraceCheckUtils]: 43: Hoare triple {3640#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3668#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:32:41,881 INFO L290 TraceCheckUtils]: 44: Hoare triple {3668#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3672#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:41,881 INFO L290 TraceCheckUtils]: 45: Hoare triple {3672#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-08 12:32:41,881 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-08 12:32:41,882 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 12:32:41,882 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:32:42,118 INFO L290 TraceCheckUtils]: 46: Hoare triple {3531#false} assume !false; {3531#false} is VALID [2022-04-08 12:32:42,119 INFO L290 TraceCheckUtils]: 45: Hoare triple {3672#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3531#false} is VALID [2022-04-08 12:32:42,119 INFO L290 TraceCheckUtils]: 44: Hoare triple {3668#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3672#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:42,124 INFO L272 TraceCheckUtils]: 43: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3668#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:32:42,125 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {3530#true} {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:32:42,125 INFO L290 TraceCheckUtils]: 41: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:42,125 INFO L290 TraceCheckUtils]: 40: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 12:32:42,125 INFO L290 TraceCheckUtils]: 39: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 12:32:42,125 INFO L272 TraceCheckUtils]: 38: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3530#true} is VALID [2022-04-08 12:32:42,126 INFO L290 TraceCheckUtils]: 37: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:32:42,126 INFO L290 TraceCheckUtils]: 36: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:32:42,127 INFO L290 TraceCheckUtils]: 35: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:32:42,127 INFO L290 TraceCheckUtils]: 34: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:32:42,128 INFO L290 TraceCheckUtils]: 33: Hoare triple {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:32:43,113 INFO L290 TraceCheckUtils]: 32: Hoare triple {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3688#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:32:43,114 INFO L290 TraceCheckUtils]: 31: Hoare triple {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 12:32:43,114 INFO L290 TraceCheckUtils]: 30: Hoare triple {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !false; {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 12:32:43,115 INFO L290 TraceCheckUtils]: 29: Hoare triple {3732#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 0) main_~a~0 (* main_~y~0 main_~s~0 0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3722#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 12:32:43,115 INFO L290 TraceCheckUtils]: 28: Hoare triple {3732#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 0) main_~a~0 (* main_~y~0 main_~s~0 0)))} assume !false; {3732#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 0) main_~a~0 (* main_~y~0 main_~s~0 0)))} is VALID [2022-04-08 12:32:43,116 INFO L290 TraceCheckUtils]: 27: Hoare triple {3530#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3732#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 0) main_~a~0 (* main_~y~0 main_~s~0 0)))} is VALID [2022-04-08 12:32:43,116 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3530#true} {3530#true} #100#return; {3530#true} is VALID [2022-04-08 12:32:43,116 INFO L290 TraceCheckUtils]: 25: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:43,116 INFO L290 TraceCheckUtils]: 24: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 12:32:43,116 INFO L290 TraceCheckUtils]: 23: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 12:32:43,116 INFO L272 TraceCheckUtils]: 22: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-08 12:32:43,116 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3530#true} {3530#true} #98#return; {3530#true} is VALID [2022-04-08 12:32:43,117 INFO L290 TraceCheckUtils]: 20: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:43,117 INFO L290 TraceCheckUtils]: 19: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 12:32:43,117 INFO L290 TraceCheckUtils]: 18: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 12:32:43,117 INFO L272 TraceCheckUtils]: 17: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3530#true} is VALID [2022-04-08 12:32:43,117 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3530#true} {3530#true} #96#return; {3530#true} is VALID [2022-04-08 12:32:43,117 INFO L290 TraceCheckUtils]: 15: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:43,117 INFO L290 TraceCheckUtils]: 14: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 12:32:43,117 INFO L290 TraceCheckUtils]: 13: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 12:32:43,117 INFO L272 TraceCheckUtils]: 12: Hoare triple {3530#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {3530#true} is VALID [2022-04-08 12:32:43,118 INFO L290 TraceCheckUtils]: 11: Hoare triple {3530#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3530#true} is VALID [2022-04-08 12:32:43,118 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3530#true} {3530#true} #94#return; {3530#true} is VALID [2022-04-08 12:32:43,118 INFO L290 TraceCheckUtils]: 9: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:43,118 INFO L290 TraceCheckUtils]: 8: Hoare triple {3530#true} assume !(0 == ~cond); {3530#true} is VALID [2022-04-08 12:32:43,118 INFO L290 TraceCheckUtils]: 7: Hoare triple {3530#true} ~cond := #in~cond; {3530#true} is VALID [2022-04-08 12:32:43,118 INFO L272 TraceCheckUtils]: 6: Hoare triple {3530#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {3530#true} is VALID [2022-04-08 12:32:43,118 INFO L290 TraceCheckUtils]: 5: Hoare triple {3530#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3530#true} is VALID [2022-04-08 12:32:43,118 INFO L272 TraceCheckUtils]: 4: Hoare triple {3530#true} call #t~ret6 := main(); {3530#true} is VALID [2022-04-08 12:32:43,118 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3530#true} {3530#true} #112#return; {3530#true} is VALID [2022-04-08 12:32:43,119 INFO L290 TraceCheckUtils]: 2: Hoare triple {3530#true} assume true; {3530#true} is VALID [2022-04-08 12:32:43,119 INFO L290 TraceCheckUtils]: 1: Hoare triple {3530#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(11, 2);call #Ultimate.allocInit(12, 3); {3530#true} is VALID [2022-04-08 12:32:43,119 INFO L272 TraceCheckUtils]: 0: Hoare triple {3530#true} call ULTIMATE.init(); {3530#true} is VALID [2022-04-08 12:32:43,119 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 2 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 12:32:43,119 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:32:43,119 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1360082529] [2022-04-08 12:32:43,119 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:32:43,120 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [387958750] [2022-04-08 12:32:43,120 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [387958750] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:32:43,120 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:32:43,120 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7] total 11 [2022-04-08 12:32:43,120 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:32:43,120 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [435487943] [2022-04-08 12:32:43,120 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [435487943] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:43,120 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:43,120 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 12:32:43,121 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [122476097] [2022-04-08 12:32:43,121 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:32:43,121 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 47 [2022-04-08 12:32:43,121 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:32:43,122 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 12:32:43,148 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 12:32:43,148 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 12:32:43,148 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:43,149 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 12:32:43,149 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-08 12:32:43,149 INFO L87 Difference]: Start difference. First operand 123 states and 172 transitions. Second operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 12:32:44,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:44,079 INFO L93 Difference]: Finished difference Result 137 states and 184 transitions. [2022-04-08 12:32:44,079 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-08 12:32:44,079 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 47 [2022-04-08 12:32:44,080 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:32:44,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 12:32:44,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 101 transitions. [2022-04-08 12:32:44,082 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 12:32:44,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 101 transitions. [2022-04-08 12:32:44,084 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 101 transitions. [2022-04-08 12:32:44,171 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 12:32:44,174 INFO L225 Difference]: With dead ends: 137 [2022-04-08 12:32:44,174 INFO L226 Difference]: Without dead ends: 135 [2022-04-08 12:32:44,174 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 95 GetRequests, 83 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=119, Unknown=0, NotChecked=0, Total=156 [2022-04-08 12:32:44,175 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 32 mSDsluCounter, 182 mSDsCounter, 0 mSdLazyCounter, 206 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 40 SdHoareTripleChecker+Valid, 233 SdHoareTripleChecker+Invalid, 221 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 206 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:32:44,175 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [40 Valid, 233 Invalid, 221 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 206 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 12:32:44,175 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 135 states. [2022-04-08 12:32:44,457 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 135 to 131. [2022-04-08 12:32:44,457 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:32:44,457 INFO L82 GeneralOperation]: Start isEquivalent. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 12:32:44,458 INFO L74 IsIncluded]: Start isIncluded. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 12:32:44,458 INFO L87 Difference]: Start difference. First operand 135 states. Second operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 12:32:44,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:44,463 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-08 12:32:44,463 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-08 12:32:44,463 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:44,464 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:44,464 INFO L74 IsIncluded]: Start isIncluded. First operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 135 states. [2022-04-08 12:32:44,464 INFO L87 Difference]: Start difference. First operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) Second operand 135 states. [2022-04-08 12:32:44,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:44,470 INFO L93 Difference]: Finished difference Result 135 states and 182 transitions. [2022-04-08 12:32:44,470 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states and 182 transitions. [2022-04-08 12:32:44,470 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:44,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:44,470 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:32:44,470 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:32:44,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 131 states, 82 states have (on average 1.2439024390243902) internal successors, (102), 83 states have internal predecessors, (102), 39 states have call successors, (39), 10 states have call predecessors, (39), 9 states have return successors, (37), 37 states have call predecessors, (37), 37 states have call successors, (37) [2022-04-08 12:32:44,475 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 131 states to 131 states and 178 transitions. [2022-04-08 12:32:44,476 INFO L78 Accepts]: Start accepts. Automaton has 131 states and 178 transitions. Word has length 47 [2022-04-08 12:32:44,476 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:32:44,476 INFO L478 AbstractCegarLoop]: Abstraction has 131 states and 178 transitions. [2022-04-08 12:32:44,476 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-08 12:32:44,476 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 131 states and 178 transitions. [2022-04-08 12:32:44,683 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 12:32:44,683 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 178 transitions. [2022-04-08 12:32:44,683 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-08 12:32:44,684 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:32:44,684 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 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] [2022-04-08 12:32:44,700 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 12:32:44,887 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 12:32:44,887 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:32:44,888 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:32:44,888 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 3 times [2022-04-08 12:32:44,888 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:44,888 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1043944076] [2022-04-08 12:32:44,889 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:32:44,889 INFO L85 PathProgramCache]: Analyzing trace with hash 1836145722, now seen corresponding path program 4 times [2022-04-08 12:32:44,889 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:32:44,889 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1164422747] [2022-04-08 12:32:44,889 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:32:44,889 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:32:44,910 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:32:44,910 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1700097230] [2022-04-08 12:32:44,910 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:32:44,910 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:32:44,910 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:32:44,914 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 12:32:44,938 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 12:32:44,961 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:32:44,961 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:32:44,962 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 12:32:44,971 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:44,972 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:32:45,091 INFO L272 TraceCheckUtils]: 0: Hoare triple {4632#true} call ULTIMATE.init(); {4632#true} is VALID [2022-04-08 12:32:45,091 INFO L290 TraceCheckUtils]: 1: Hoare triple {4632#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(11, 2);call #Ultimate.allocInit(12, 3); {4632#true} is VALID [2022-04-08 12:32:45,091 INFO L290 TraceCheckUtils]: 2: Hoare triple {4632#true} assume true; {4632#true} is VALID [2022-04-08 12:32:45,091 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4632#true} {4632#true} #112#return; {4632#true} is VALID [2022-04-08 12:32:45,091 INFO L272 TraceCheckUtils]: 4: Hoare triple {4632#true} call #t~ret6 := main(); {4632#true} is VALID [2022-04-08 12:32:45,091 INFO L290 TraceCheckUtils]: 5: Hoare triple {4632#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4632#true} is VALID [2022-04-08 12:32:45,091 INFO L272 TraceCheckUtils]: 6: Hoare triple {4632#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {4632#true} is VALID [2022-04-08 12:32:45,091 INFO L290 TraceCheckUtils]: 7: Hoare triple {4632#true} ~cond := #in~cond; {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L290 TraceCheckUtils]: 8: Hoare triple {4632#true} assume !(0 == ~cond); {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L290 TraceCheckUtils]: 9: Hoare triple {4632#true} assume true; {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4632#true} {4632#true} #94#return; {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L290 TraceCheckUtils]: 11: Hoare triple {4632#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L272 TraceCheckUtils]: 12: Hoare triple {4632#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L290 TraceCheckUtils]: 13: Hoare triple {4632#true} ~cond := #in~cond; {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L290 TraceCheckUtils]: 14: Hoare triple {4632#true} assume !(0 == ~cond); {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L290 TraceCheckUtils]: 15: Hoare triple {4632#true} assume true; {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4632#true} {4632#true} #96#return; {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L272 TraceCheckUtils]: 17: Hoare triple {4632#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L290 TraceCheckUtils]: 18: Hoare triple {4632#true} ~cond := #in~cond; {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L290 TraceCheckUtils]: 19: Hoare triple {4632#true} assume !(0 == ~cond); {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L290 TraceCheckUtils]: 20: Hoare triple {4632#true} assume true; {4632#true} is VALID [2022-04-08 12:32:45,092 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4632#true} {4632#true} #98#return; {4632#true} is VALID [2022-04-08 12:32:45,093 INFO L272 TraceCheckUtils]: 22: Hoare triple {4632#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4632#true} is VALID [2022-04-08 12:32:45,093 INFO L290 TraceCheckUtils]: 23: Hoare triple {4632#true} ~cond := #in~cond; {4632#true} is VALID [2022-04-08 12:32:45,093 INFO L290 TraceCheckUtils]: 24: Hoare triple {4632#true} assume !(0 == ~cond); {4632#true} is VALID [2022-04-08 12:32:45,093 INFO L290 TraceCheckUtils]: 25: Hoare triple {4632#true} assume true; {4632#true} is VALID [2022-04-08 12:32:45,093 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4632#true} {4632#true} #100#return; {4632#true} is VALID [2022-04-08 12:32:45,093 INFO L290 TraceCheckUtils]: 27: Hoare triple {4632#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4632#true} is VALID [2022-04-08 12:32:45,093 INFO L290 TraceCheckUtils]: 28: Hoare triple {4632#true} assume !false; {4632#true} is VALID [2022-04-08 12:32:45,093 INFO L290 TraceCheckUtils]: 29: Hoare triple {4632#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4632#true} is VALID [2022-04-08 12:32:45,093 INFO L290 TraceCheckUtils]: 30: Hoare triple {4632#true} assume !false; {4632#true} is VALID [2022-04-08 12:32:45,097 INFO L290 TraceCheckUtils]: 31: Hoare triple {4632#true} assume !(~c~0 >= ~b~0); {4730#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:32:45,097 INFO L290 TraceCheckUtils]: 32: Hoare triple {4730#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4734#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:32:45,098 INFO L290 TraceCheckUtils]: 33: Hoare triple {4734#(< main_~b~0 main_~a~0)} assume !false; {4734#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:32:45,112 INFO L290 TraceCheckUtils]: 34: Hoare triple {4734#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4741#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:32:45,113 INFO L290 TraceCheckUtils]: 35: Hoare triple {4741#(< main_~b~0 main_~c~0)} assume !false; {4741#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:32:45,113 INFO L290 TraceCheckUtils]: 36: Hoare triple {4741#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {4633#false} is VALID [2022-04-08 12:32:45,113 INFO L290 TraceCheckUtils]: 37: Hoare triple {4633#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4633#false} is VALID [2022-04-08 12:32:45,113 INFO L290 TraceCheckUtils]: 38: Hoare triple {4633#false} assume !false; {4633#false} is VALID [2022-04-08 12:32:45,113 INFO L290 TraceCheckUtils]: 39: Hoare triple {4633#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4633#false} is VALID [2022-04-08 12:32:45,113 INFO L290 TraceCheckUtils]: 40: Hoare triple {4633#false} assume !false; {4633#false} is VALID [2022-04-08 12:32:45,114 INFO L290 TraceCheckUtils]: 41: Hoare triple {4633#false} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4633#false} is VALID [2022-04-08 12:32:45,114 INFO L290 TraceCheckUtils]: 42: Hoare triple {4633#false} assume !false; {4633#false} is VALID [2022-04-08 12:32:45,114 INFO L272 TraceCheckUtils]: 43: Hoare triple {4633#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4633#false} is VALID [2022-04-08 12:32:45,114 INFO L290 TraceCheckUtils]: 44: Hoare triple {4633#false} ~cond := #in~cond; {4633#false} is VALID [2022-04-08 12:32:45,114 INFO L290 TraceCheckUtils]: 45: Hoare triple {4633#false} assume 0 == ~cond; {4633#false} is VALID [2022-04-08 12:32:45,114 INFO L290 TraceCheckUtils]: 46: Hoare triple {4633#false} assume !false; {4633#false} is VALID [2022-04-08 12:32:45,114 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-08 12:32:45,114 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:32:45,115 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:32:45,115 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1164422747] [2022-04-08 12:32:45,115 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:32:45,115 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1700097230] [2022-04-08 12:32:45,115 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1700097230] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:45,115 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:45,115 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:32:45,115 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:32:45,116 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1043944076] [2022-04-08 12:32:45,116 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1043944076] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:45,116 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:45,116 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:32:45,116 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [611226770] [2022-04-08 12:32:45,116 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:32:45,116 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 47 [2022-04-08 12:32:45,117 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:32:45,117 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 12:32:45,142 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 12:32:45,143 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 12:32:45,143 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:45,143 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 12:32:45,143 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 12:32:45,143 INFO L87 Difference]: Start difference. First operand 131 states and 178 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 12:32:45,619 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:45,619 INFO L93 Difference]: Finished difference Result 170 states and 230 transitions. [2022-04-08 12:32:45,619 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 12:32:45,620 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 47 [2022-04-08 12:32:45,620 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:32:45,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 12:32:45,622 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-08 12:32:45,622 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 12:32:45,626 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 102 transitions. [2022-04-08 12:32:45,626 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 102 transitions. [2022-04-08 12:32:45,714 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 12:32:45,716 INFO L225 Difference]: With dead ends: 170 [2022-04-08 12:32:45,716 INFO L226 Difference]: Without dead ends: 114 [2022-04-08 12:32:45,717 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-04-08 12:32:45,718 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 18 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 82 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 155 SdHoareTripleChecker+Invalid, 91 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 82 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:32:45,718 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 155 Invalid, 91 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 82 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:32:45,718 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 114 states. [2022-04-08 12:32:45,941 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 114 to 106. [2022-04-08 12:32:45,941 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:32:45,942 INFO L82 GeneralOperation]: Start isEquivalent. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-08 12:32:45,942 INFO L74 IsIncluded]: Start isIncluded. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-08 12:32:45,942 INFO L87 Difference]: Start difference. First operand 114 states. Second operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-08 12:32:45,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:45,946 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-08 12:32:45,946 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-08 12:32:45,946 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:45,947 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:45,947 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) Second operand 114 states. [2022-04-08 12:32:45,947 INFO L87 Difference]: Start difference. First operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) Second operand 114 states. [2022-04-08 12:32:45,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:45,951 INFO L93 Difference]: Finished difference Result 114 states and 146 transitions. [2022-04-08 12:32:45,951 INFO L276 IsEmpty]: Start isEmpty. Operand 114 states and 146 transitions. [2022-04-08 12:32:45,951 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:45,952 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:45,952 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:32:45,952 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:32:45,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 65 states have (on average 1.1846153846153846) internal successors, (77), 66 states have internal predecessors, (77), 31 states have call successors, (31), 10 states have call predecessors, (31), 9 states have return successors, (29), 29 states have call predecessors, (29), 29 states have call successors, (29) [2022-04-08 12:32:45,955 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 137 transitions. [2022-04-08 12:32:45,956 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 137 transitions. Word has length 47 [2022-04-08 12:32:45,956 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:32:45,956 INFO L478 AbstractCegarLoop]: Abstraction has 106 states and 137 transitions. [2022-04-08 12:32:45,956 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-08 12:32:45,956 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 106 states and 137 transitions. [2022-04-08 12:32:46,139 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:46,139 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 137 transitions. [2022-04-08 12:32:46,140 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-08 12:32:46,140 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:32:46,140 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 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 12:32:46,156 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 12:32:46,340 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 12:32:46,341 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:32:46,341 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:32:46,341 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 1 times [2022-04-08 12:32:46,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:46,341 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1108443623] [2022-04-08 12:32:46,341 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:32:46,342 INFO L85 PathProgramCache]: Analyzing trace with hash -1952108775, now seen corresponding path program 2 times [2022-04-08 12:32:46,342 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:32:46,342 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1474708754] [2022-04-08 12:32:46,342 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:32:46,342 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:32:46,354 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:32:46,355 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1390029157] [2022-04-08 12:32:46,355 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:32:46,355 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:32:46,355 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:32:46,356 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 12:32:46,367 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 12:32:46,418 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:32:46,418 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:32:46,419 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 12:32:46,428 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:46,429 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:32:46,583 INFO L272 TraceCheckUtils]: 0: Hoare triple {5562#true} call ULTIMATE.init(); {5562#true} is VALID [2022-04-08 12:32:46,583 INFO L290 TraceCheckUtils]: 1: Hoare triple {5562#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(11, 2);call #Ultimate.allocInit(12, 3); {5562#true} is VALID [2022-04-08 12:32:46,583 INFO L290 TraceCheckUtils]: 2: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 12:32:46,583 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5562#true} {5562#true} #112#return; {5562#true} is VALID [2022-04-08 12:32:46,583 INFO L272 TraceCheckUtils]: 4: Hoare triple {5562#true} call #t~ret6 := main(); {5562#true} is VALID [2022-04-08 12:32:46,583 INFO L290 TraceCheckUtils]: 5: Hoare triple {5562#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {5562#true} is VALID [2022-04-08 12:32:46,583 INFO L272 TraceCheckUtils]: 6: Hoare triple {5562#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {5562#true} is VALID [2022-04-08 12:32:46,583 INFO L290 TraceCheckUtils]: 7: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 12:32:46,583 INFO L290 TraceCheckUtils]: 8: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 12:32:46,583 INFO L290 TraceCheckUtils]: 9: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 12:32:46,583 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5562#true} {5562#true} #94#return; {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L290 TraceCheckUtils]: 11: Hoare triple {5562#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L272 TraceCheckUtils]: 12: Hoare triple {5562#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L290 TraceCheckUtils]: 13: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L290 TraceCheckUtils]: 14: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L290 TraceCheckUtils]: 15: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5562#true} {5562#true} #96#return; {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L272 TraceCheckUtils]: 17: Hoare triple {5562#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L290 TraceCheckUtils]: 18: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L290 TraceCheckUtils]: 19: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L290 TraceCheckUtils]: 20: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5562#true} {5562#true} #98#return; {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L272 TraceCheckUtils]: 22: Hoare triple {5562#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5562#true} is VALID [2022-04-08 12:32:46,584 INFO L290 TraceCheckUtils]: 23: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 12:32:46,585 INFO L290 TraceCheckUtils]: 24: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 12:32:46,585 INFO L290 TraceCheckUtils]: 25: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 12:32:46,585 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5562#true} {5562#true} #100#return; {5562#true} is VALID [2022-04-08 12:32:46,585 INFO L290 TraceCheckUtils]: 27: Hoare triple {5562#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5562#true} is VALID [2022-04-08 12:32:46,585 INFO L290 TraceCheckUtils]: 28: Hoare triple {5562#true} assume !false; {5562#true} is VALID [2022-04-08 12:32:46,585 INFO L290 TraceCheckUtils]: 29: Hoare triple {5562#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5562#true} is VALID [2022-04-08 12:32:46,585 INFO L290 TraceCheckUtils]: 30: Hoare triple {5562#true} assume !false; {5562#true} is VALID [2022-04-08 12:32:46,585 INFO L290 TraceCheckUtils]: 31: Hoare triple {5562#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 12:32:46,586 INFO L290 TraceCheckUtils]: 32: Hoare triple {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !false; {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 12:32:46,586 INFO L272 TraceCheckUtils]: 33: Hoare triple {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5562#true} is VALID [2022-04-08 12:32:46,586 INFO L290 TraceCheckUtils]: 34: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 12:32:46,586 INFO L290 TraceCheckUtils]: 35: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 12:32:46,586 INFO L290 TraceCheckUtils]: 36: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 12:32:46,587 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5562#true} {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 12:32:46,587 INFO L272 TraceCheckUtils]: 38: Hoare triple {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5562#true} is VALID [2022-04-08 12:32:46,587 INFO L290 TraceCheckUtils]: 39: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 12:32:46,587 INFO L290 TraceCheckUtils]: 40: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 12:32:46,587 INFO L290 TraceCheckUtils]: 41: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 12:32:46,588 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {5562#true} {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #104#return; {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 12:32:46,588 INFO L272 TraceCheckUtils]: 43: Hoare triple {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5562#true} is VALID [2022-04-08 12:32:46,588 INFO L290 TraceCheckUtils]: 44: Hoare triple {5562#true} ~cond := #in~cond; {5562#true} is VALID [2022-04-08 12:32:46,588 INFO L290 TraceCheckUtils]: 45: Hoare triple {5562#true} assume !(0 == ~cond); {5562#true} is VALID [2022-04-08 12:32:46,588 INFO L290 TraceCheckUtils]: 46: Hoare triple {5562#true} assume true; {5562#true} is VALID [2022-04-08 12:32:46,589 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {5562#true} {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #106#return; {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-08 12:32:46,589 INFO L272 TraceCheckUtils]: 48: Hoare triple {5660#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {5712#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:32:46,590 INFO L290 TraceCheckUtils]: 49: Hoare triple {5712#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5716#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:46,590 INFO L290 TraceCheckUtils]: 50: Hoare triple {5716#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5563#false} is VALID [2022-04-08 12:32:46,590 INFO L290 TraceCheckUtils]: 51: Hoare triple {5563#false} assume !false; {5563#false} is VALID [2022-04-08 12:32:46,590 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-08 12:32:46,590 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:32:46,590 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:32:46,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1474708754] [2022-04-08 12:32:46,590 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:32:46,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1390029157] [2022-04-08 12:32:46,591 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1390029157] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:46,591 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:46,591 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:32:46,591 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:32:46,591 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1108443623] [2022-04-08 12:32:46,591 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1108443623] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:32:46,591 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:32:46,591 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:32:46,591 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1558353488] [2022-04-08 12:32:46,591 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:32:46,592 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 52 [2022-04-08 12:32:46,592 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:32:46,592 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 12:32:46,619 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:46,620 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 12:32:46,620 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:46,620 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 12:32:46,620 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 12:32:46,620 INFO L87 Difference]: Start difference. First operand 106 states and 137 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 12:32:47,108 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:47,109 INFO L93 Difference]: Finished difference Result 158 states and 221 transitions. [2022-04-08 12:32:47,109 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 12:32:47,109 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 52 [2022-04-08 12:32:47,109 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:32:47,109 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 12:32:47,111 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 12:32:47,111 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 12:32:47,112 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 12:32:47,112 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-08 12:32:47,170 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:47,174 INFO L225 Difference]: With dead ends: 158 [2022-04-08 12:32:47,174 INFO L226 Difference]: Without dead ends: 156 [2022-04-08 12:32:47,174 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 48 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 12:32:47,175 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 9 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:32:47,175 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 156 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:32:47,176 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-04-08 12:32:47,488 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 140. [2022-04-08 12:32:47,488 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:32:47,489 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 12:32:47,489 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 12:32:47,490 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 12:32:47,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:47,495 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-08 12:32:47,495 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-08 12:32:47,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:47,496 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:47,497 INFO L74 IsIncluded]: Start isIncluded. First operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) Second operand 156 states. [2022-04-08 12:32:47,497 INFO L87 Difference]: Start difference. First operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) Second operand 156 states. [2022-04-08 12:32:47,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:32:47,503 INFO L93 Difference]: Finished difference Result 156 states and 219 transitions. [2022-04-08 12:32:47,503 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 219 transitions. [2022-04-08 12:32:47,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:32:47,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:32:47,504 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:32:47,504 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:32:47,504 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 140 states, 74 states have (on average 1.162162162162162) internal successors, (86), 81 states have internal predecessors, (86), 55 states have call successors, (55), 11 states have call predecessors, (55), 10 states have return successors, (53), 47 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-08 12:32:47,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 194 transitions. [2022-04-08 12:32:47,510 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 194 transitions. Word has length 52 [2022-04-08 12:32:47,510 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:32:47,510 INFO L478 AbstractCegarLoop]: Abstraction has 140 states and 194 transitions. [2022-04-08 12:32:47,511 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-08 12:32:47,511 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 140 states and 194 transitions. [2022-04-08 12:32:47,765 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 194 edges. 194 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:32:47,766 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 194 transitions. [2022-04-08 12:32:47,767 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-08 12:32:47,768 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:32:47,768 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 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 12:32:47,785 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 12:32:47,977 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 12:32:47,977 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:32:47,978 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:32:47,978 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 1 times [2022-04-08 12:32:47,978 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:32:47,978 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1513848081] [2022-04-08 12:32:47,978 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:32:47,978 INFO L85 PathProgramCache]: Analyzing trace with hash 188363668, now seen corresponding path program 2 times [2022-04-08 12:32:47,978 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:32:47,978 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1566747478] [2022-04-08 12:32:47,978 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:32:47,979 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:32:47,993 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:32:47,993 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [681729766] [2022-04-08 12:32:47,994 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:32:47,994 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:32:47,994 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:32:47,995 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 12:32:48,005 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 12:32:48,055 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:32:48,055 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:32:48,056 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-08 12:32:48,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:32:48,069 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:32:48,870 INFO L272 TraceCheckUtils]: 0: Hoare triple {6632#true} call ULTIMATE.init(); {6632#true} is VALID [2022-04-08 12:32:48,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {6632#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(11, 2);call #Ultimate.allocInit(12, 3); {6632#true} is VALID [2022-04-08 12:32:48,870 INFO L290 TraceCheckUtils]: 2: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:32:48,870 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6632#true} {6632#true} #112#return; {6632#true} is VALID [2022-04-08 12:32:48,870 INFO L272 TraceCheckUtils]: 4: Hoare triple {6632#true} call #t~ret6 := main(); {6632#true} is VALID [2022-04-08 12:32:48,870 INFO L290 TraceCheckUtils]: 5: Hoare triple {6632#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6632#true} is VALID [2022-04-08 12:32:48,871 INFO L272 TraceCheckUtils]: 6: Hoare triple {6632#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:32:48,871 INFO L290 TraceCheckUtils]: 7: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:32:48,871 INFO L290 TraceCheckUtils]: 8: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:32:48,871 INFO L290 TraceCheckUtils]: 9: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:32:48,871 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6632#true} {6632#true} #94#return; {6632#true} is VALID [2022-04-08 12:32:48,871 INFO L290 TraceCheckUtils]: 11: Hoare triple {6632#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6632#true} is VALID [2022-04-08 12:32:48,871 INFO L272 TraceCheckUtils]: 12: Hoare triple {6632#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:32:48,871 INFO L290 TraceCheckUtils]: 13: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:32:48,871 INFO L290 TraceCheckUtils]: 14: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:32:48,872 INFO L290 TraceCheckUtils]: 15: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:32:48,872 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6632#true} {6632#true} #96#return; {6632#true} is VALID [2022-04-08 12:32:48,872 INFO L272 TraceCheckUtils]: 17: Hoare triple {6632#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:32:48,872 INFO L290 TraceCheckUtils]: 18: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:32:48,872 INFO L290 TraceCheckUtils]: 19: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:32:48,872 INFO L290 TraceCheckUtils]: 20: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:32:48,872 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6632#true} {6632#true} #98#return; {6632#true} is VALID [2022-04-08 12:32:48,872 INFO L272 TraceCheckUtils]: 22: Hoare triple {6632#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:32:48,872 INFO L290 TraceCheckUtils]: 23: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:32:48,872 INFO L290 TraceCheckUtils]: 24: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:32:48,873 INFO L290 TraceCheckUtils]: 25: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:32:48,873 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6632#true} {6632#true} #100#return; {6632#true} is VALID [2022-04-08 12:32:48,873 INFO L290 TraceCheckUtils]: 27: Hoare triple {6632#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6718#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,874 INFO L290 TraceCheckUtils]: 28: Hoare triple {6718#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6718#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,874 INFO L290 TraceCheckUtils]: 29: Hoare triple {6718#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6725#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,875 INFO L290 TraceCheckUtils]: 30: Hoare triple {6725#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6725#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,875 INFO L290 TraceCheckUtils]: 31: Hoare triple {6725#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6732#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,876 INFO L290 TraceCheckUtils]: 32: Hoare triple {6732#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6732#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,876 INFO L272 TraceCheckUtils]: 33: Hoare triple {6732#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:32:48,876 INFO L290 TraceCheckUtils]: 34: Hoare triple {6632#true} ~cond := #in~cond; {6742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:48,877 INFO L290 TraceCheckUtils]: 35: Hoare triple {6742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:32:48,877 INFO L290 TraceCheckUtils]: 36: Hoare triple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:32:48,878 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} {6732#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,878 INFO L272 TraceCheckUtils]: 38: Hoare triple {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:32:48,879 INFO L290 TraceCheckUtils]: 39: Hoare triple {6632#true} ~cond := #in~cond; {6742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:48,879 INFO L290 TraceCheckUtils]: 40: Hoare triple {6742#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:32:48,880 INFO L290 TraceCheckUtils]: 41: Hoare triple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:32:48,881 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,881 INFO L272 TraceCheckUtils]: 43: Hoare triple {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:32:48,881 INFO L290 TraceCheckUtils]: 44: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:32:48,881 INFO L290 TraceCheckUtils]: 45: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:32:48,881 INFO L290 TraceCheckUtils]: 46: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:32:48,882 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6632#true} {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,882 INFO L272 TraceCheckUtils]: 48: Hoare triple {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:32:48,882 INFO L290 TraceCheckUtils]: 49: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:32:48,882 INFO L290 TraceCheckUtils]: 50: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:32:48,882 INFO L290 TraceCheckUtils]: 51: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:32:48,883 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {6632#true} {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,884 INFO L290 TraceCheckUtils]: 53: Hoare triple {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,885 INFO L290 TraceCheckUtils]: 54: Hoare triple {6753#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,885 INFO L290 TraceCheckUtils]: 55: Hoare triple {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,886 INFO L290 TraceCheckUtils]: 56: Hoare triple {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:32:48,886 INFO L290 TraceCheckUtils]: 57: Hoare triple {6805#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {6815#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 12:32:48,887 INFO L290 TraceCheckUtils]: 58: Hoare triple {6815#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !false; {6815#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 12:32:48,888 INFO L290 TraceCheckUtils]: 59: Hoare triple {6815#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* (- 1) main_~a~0) main_~x~0)) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {6822#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} is VALID [2022-04-08 12:32:48,889 INFO L272 TraceCheckUtils]: 60: Hoare triple {6822#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0) (= (+ (* (- 1) main_~a~0) main_~x~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {6826#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:32:48,889 INFO L290 TraceCheckUtils]: 61: Hoare triple {6826#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6830#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:32:48,890 INFO L290 TraceCheckUtils]: 62: Hoare triple {6830#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6633#false} is VALID [2022-04-08 12:32:48,890 INFO L290 TraceCheckUtils]: 63: Hoare triple {6633#false} assume !false; {6633#false} is VALID [2022-04-08 12:32:48,890 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 6 proven. 18 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-08 12:32:48,890 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:33:24,394 INFO L290 TraceCheckUtils]: 63: Hoare triple {6633#false} assume !false; {6633#false} is VALID [2022-04-08 12:33:24,394 INFO L290 TraceCheckUtils]: 62: Hoare triple {6830#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6633#false} is VALID [2022-04-08 12:33:24,395 INFO L290 TraceCheckUtils]: 61: Hoare triple {6826#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6830#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:33:24,396 INFO L272 TraceCheckUtils]: 60: Hoare triple {6846#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {6826#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:33:24,397 INFO L290 TraceCheckUtils]: 59: Hoare triple {6850#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {6846#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:24,397 INFO L290 TraceCheckUtils]: 58: Hoare triple {6850#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {6850#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 12:33:24,723 INFO L290 TraceCheckUtils]: 57: Hoare triple {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {6850#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 12:33:24,724 INFO L290 TraceCheckUtils]: 56: Hoare triple {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:33:24,724 INFO L290 TraceCheckUtils]: 55: Hoare triple {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:33:25,011 INFO L290 TraceCheckUtils]: 54: Hoare triple {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {6857#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:33:25,012 INFO L290 TraceCheckUtils]: 53: Hoare triple {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:33:25,013 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {6632#true} {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:33:25,013 INFO L290 TraceCheckUtils]: 51: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:33:25,013 INFO L290 TraceCheckUtils]: 50: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:33:25,013 INFO L290 TraceCheckUtils]: 49: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:33:25,013 INFO L272 TraceCheckUtils]: 48: Hoare triple {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:33:25,014 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {6632#true} {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:33:25,014 INFO L290 TraceCheckUtils]: 46: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:33:25,014 INFO L290 TraceCheckUtils]: 45: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:33:25,014 INFO L290 TraceCheckUtils]: 44: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:33:25,014 INFO L272 TraceCheckUtils]: 43: Hoare triple {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:33:25,029 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} {6904#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {6867#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:33:25,029 INFO L290 TraceCheckUtils]: 41: Hoare triple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:33:25,029 INFO L290 TraceCheckUtils]: 40: Hoare triple {6914#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:33:25,030 INFO L290 TraceCheckUtils]: 39: Hoare triple {6632#true} ~cond := #in~cond; {6914#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:33:25,030 INFO L272 TraceCheckUtils]: 38: Hoare triple {6904#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:33:25,031 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} {6921#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {6904#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:33:25,031 INFO L290 TraceCheckUtils]: 36: Hoare triple {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:33:25,032 INFO L290 TraceCheckUtils]: 35: Hoare triple {6914#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {6746#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:33:25,032 INFO L290 TraceCheckUtils]: 34: Hoare triple {6632#true} ~cond := #in~cond; {6914#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:33:25,032 INFO L272 TraceCheckUtils]: 33: Hoare triple {6921#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:33:25,033 INFO L290 TraceCheckUtils]: 32: Hoare triple {6921#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {6921#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:33:25,034 INFO L290 TraceCheckUtils]: 31: Hoare triple {6940#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6921#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:33:25,034 INFO L290 TraceCheckUtils]: 30: Hoare triple {6940#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !false; {6940#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-08 12:33:25,035 INFO L290 TraceCheckUtils]: 29: Hoare triple {6632#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6940#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-08 12:33:25,035 INFO L290 TraceCheckUtils]: 28: Hoare triple {6632#true} assume !false; {6632#true} is VALID [2022-04-08 12:33:25,035 INFO L290 TraceCheckUtils]: 27: Hoare triple {6632#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6632#true} is VALID [2022-04-08 12:33:25,035 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6632#true} {6632#true} #100#return; {6632#true} is VALID [2022-04-08 12:33:25,036 INFO L290 TraceCheckUtils]: 25: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:33:25,036 INFO L290 TraceCheckUtils]: 24: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:33:25,036 INFO L290 TraceCheckUtils]: 23: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:33:25,036 INFO L272 TraceCheckUtils]: 22: Hoare triple {6632#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:33:25,036 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6632#true} {6632#true} #98#return; {6632#true} is VALID [2022-04-08 12:33:25,036 INFO L290 TraceCheckUtils]: 20: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:33:25,036 INFO L290 TraceCheckUtils]: 19: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:33:25,036 INFO L290 TraceCheckUtils]: 18: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:33:25,036 INFO L272 TraceCheckUtils]: 17: Hoare triple {6632#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:33:25,036 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6632#true} {6632#true} #96#return; {6632#true} is VALID [2022-04-08 12:33:25,037 INFO L290 TraceCheckUtils]: 15: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:33:25,037 INFO L290 TraceCheckUtils]: 14: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:33:25,037 INFO L290 TraceCheckUtils]: 13: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:33:25,037 INFO L272 TraceCheckUtils]: 12: Hoare triple {6632#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:33:25,037 INFO L290 TraceCheckUtils]: 11: Hoare triple {6632#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6632#true} is VALID [2022-04-08 12:33:25,037 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6632#true} {6632#true} #94#return; {6632#true} is VALID [2022-04-08 12:33:25,037 INFO L290 TraceCheckUtils]: 9: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:33:25,037 INFO L290 TraceCheckUtils]: 8: Hoare triple {6632#true} assume !(0 == ~cond); {6632#true} is VALID [2022-04-08 12:33:25,037 INFO L290 TraceCheckUtils]: 7: Hoare triple {6632#true} ~cond := #in~cond; {6632#true} is VALID [2022-04-08 12:33:25,037 INFO L272 TraceCheckUtils]: 6: Hoare triple {6632#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {6632#true} is VALID [2022-04-08 12:33:25,038 INFO L290 TraceCheckUtils]: 5: Hoare triple {6632#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6632#true} is VALID [2022-04-08 12:33:25,038 INFO L272 TraceCheckUtils]: 4: Hoare triple {6632#true} call #t~ret6 := main(); {6632#true} is VALID [2022-04-08 12:33:25,038 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6632#true} {6632#true} #112#return; {6632#true} is VALID [2022-04-08 12:33:25,038 INFO L290 TraceCheckUtils]: 2: Hoare triple {6632#true} assume true; {6632#true} is VALID [2022-04-08 12:33:25,038 INFO L290 TraceCheckUtils]: 1: Hoare triple {6632#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(11, 2);call #Ultimate.allocInit(12, 3); {6632#true} is VALID [2022-04-08 12:33:25,038 INFO L272 TraceCheckUtils]: 0: Hoare triple {6632#true} call ULTIMATE.init(); {6632#true} is VALID [2022-04-08 12:33:25,038 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 8 proven. 16 refuted. 0 times theorem prover too weak. 36 trivial. 0 not checked. [2022-04-08 12:33:25,039 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:33:25,039 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1566747478] [2022-04-08 12:33:25,039 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:33:25,039 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [681729766] [2022-04-08 12:33:25,039 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [681729766] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:33:25,039 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:33:25,039 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-08 12:33:25,039 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:33:25,039 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1513848081] [2022-04-08 12:33:25,040 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1513848081] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:33:25,040 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:33:25,040 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 12:33:25,040 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1951944713] [2022-04-08 12:33:25,040 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:33:25,040 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 64 [2022-04-08 12:33:25,041 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:33:25,041 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 12:33:25,082 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 12:33:25,083 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 12:33:25,083 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:33:25,083 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 12:33:25,083 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=349, Unknown=0, NotChecked=0, Total=420 [2022-04-08 12:33:25,083 INFO L87 Difference]: Start difference. First operand 140 states and 194 transitions. Second operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 12:33:27,365 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:27,366 INFO L93 Difference]: Finished difference Result 200 states and 283 transitions. [2022-04-08 12:33:27,366 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 12:33:27,366 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 64 [2022-04-08 12:33:27,366 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:33:27,366 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 12:33:27,369 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-08 12:33:27,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 12:33:27,371 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 131 transitions. [2022-04-08 12:33:27,371 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 131 transitions. [2022-04-08 12:33:27,509 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 131 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:33:27,514 INFO L225 Difference]: With dead ends: 200 [2022-04-08 12:33:27,514 INFO L226 Difference]: Without dead ends: 197 [2022-04-08 12:33:27,514 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 107 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=97, Invalid=503, Unknown=0, NotChecked=0, Total=600 [2022-04-08 12:33:27,515 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 47 mSDsluCounter, 284 mSDsCounter, 0 mSdLazyCounter, 678 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 329 SdHoareTripleChecker+Invalid, 706 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 678 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-08 12:33:27,515 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 329 Invalid, 706 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 678 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-08 12:33:27,516 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-08 12:33:28,005 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 193. [2022-04-08 12:33:28,005 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:33:28,006 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:28,006 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:28,006 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:28,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:28,014 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-08 12:33:28,015 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-08 12:33:28,016 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:33:28,016 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:33:28,016 INFO L74 IsIncluded]: Start isIncluded. First operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) Second operand 197 states. [2022-04-08 12:33:28,017 INFO L87 Difference]: Start difference. First operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) Second operand 197 states. [2022-04-08 12:33:28,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:28,025 INFO L93 Difference]: Finished difference Result 197 states and 279 transitions. [2022-04-08 12:33:28,025 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 279 transitions. [2022-04-08 12:33:28,026 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:33:28,026 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:33:28,026 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:33:28,026 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:33:28,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 193 states, 101 states have (on average 1.1782178217821782) internal successors, (119), 110 states have internal predecessors, (119), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 69 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:28,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 193 states to 193 states and 275 transitions. [2022-04-08 12:33:28,034 INFO L78 Accepts]: Start accepts. Automaton has 193 states and 275 transitions. Word has length 64 [2022-04-08 12:33:28,035 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:33:28,035 INFO L478 AbstractCegarLoop]: Abstraction has 193 states and 275 transitions. [2022-04-08 12:33:28,035 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.4166666666666665) internal successors, (29), 12 states have internal predecessors, (29), 4 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-08 12:33:28,035 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 193 states and 275 transitions. [2022-04-08 12:33:28,438 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 275 edges. 275 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:33:28,438 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 275 transitions. [2022-04-08 12:33:28,439 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-08 12:33:28,439 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:33:28,439 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 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, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:33:28,457 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 12:33:28,647 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 12:33:28,648 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:33:28,648 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:33:28,648 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 3 times [2022-04-08 12:33:28,648 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:33:28,648 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1907174802] [2022-04-08 12:33:28,649 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:33:28,649 INFO L85 PathProgramCache]: Analyzing trace with hash -368004398, now seen corresponding path program 4 times [2022-04-08 12:33:28,649 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:33:28,649 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1767579439] [2022-04-08 12:33:28,649 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:33:28,649 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:33:28,669 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:33:28,669 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [371926259] [2022-04-08 12:33:28,669 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:33:28,669 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:33:28,670 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:33:28,670 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 12:33:28,677 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 12:33:28,719 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:33:28,720 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:33:28,721 INFO L263 TraceCheckSpWp]: Trace formula consists of 168 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-08 12:33:28,733 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:33:28,735 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:33:28,975 INFO L272 TraceCheckUtils]: 0: Hoare triple {8224#true} call ULTIMATE.init(); {8224#true} is VALID [2022-04-08 12:33:28,975 INFO L290 TraceCheckUtils]: 1: Hoare triple {8224#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(11, 2);call #Ultimate.allocInit(12, 3); {8224#true} is VALID [2022-04-08 12:33:28,975 INFO L290 TraceCheckUtils]: 2: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:28,975 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8224#true} {8224#true} #112#return; {8224#true} is VALID [2022-04-08 12:33:28,975 INFO L272 TraceCheckUtils]: 4: Hoare triple {8224#true} call #t~ret6 := main(); {8224#true} is VALID [2022-04-08 12:33:28,975 INFO L290 TraceCheckUtils]: 5: Hoare triple {8224#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8224#true} is VALID [2022-04-08 12:33:28,975 INFO L272 TraceCheckUtils]: 6: Hoare triple {8224#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:28,975 INFO L290 TraceCheckUtils]: 7: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:28,975 INFO L290 TraceCheckUtils]: 8: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:28,975 INFO L290 TraceCheckUtils]: 9: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8224#true} {8224#true} #94#return; {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L290 TraceCheckUtils]: 11: Hoare triple {8224#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L272 TraceCheckUtils]: 12: Hoare triple {8224#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L290 TraceCheckUtils]: 13: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L290 TraceCheckUtils]: 14: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L290 TraceCheckUtils]: 15: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8224#true} {8224#true} #96#return; {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L272 TraceCheckUtils]: 17: Hoare triple {8224#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L290 TraceCheckUtils]: 18: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L290 TraceCheckUtils]: 19: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L290 TraceCheckUtils]: 20: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8224#true} {8224#true} #98#return; {8224#true} is VALID [2022-04-08 12:33:28,976 INFO L272 TraceCheckUtils]: 22: Hoare triple {8224#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:28,977 INFO L290 TraceCheckUtils]: 23: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:28,977 INFO L290 TraceCheckUtils]: 24: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:28,977 INFO L290 TraceCheckUtils]: 25: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:28,977 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8224#true} {8224#true} #100#return; {8224#true} is VALID [2022-04-08 12:33:28,977 INFO L290 TraceCheckUtils]: 27: Hoare triple {8224#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8224#true} is VALID [2022-04-08 12:33:28,977 INFO L290 TraceCheckUtils]: 28: Hoare triple {8224#true} assume !false; {8224#true} is VALID [2022-04-08 12:33:28,977 INFO L290 TraceCheckUtils]: 29: Hoare triple {8224#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8224#true} is VALID [2022-04-08 12:33:28,977 INFO L290 TraceCheckUtils]: 30: Hoare triple {8224#true} assume !false; {8224#true} is VALID [2022-04-08 12:33:28,978 INFO L290 TraceCheckUtils]: 31: Hoare triple {8224#true} assume !(~c~0 >= ~b~0); {8322#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:33:28,978 INFO L290 TraceCheckUtils]: 32: Hoare triple {8322#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8326#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:33:28,978 INFO L290 TraceCheckUtils]: 33: Hoare triple {8326#(< main_~b~0 main_~a~0)} assume !false; {8326#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:33:28,979 INFO L290 TraceCheckUtils]: 34: Hoare triple {8326#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8333#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:33:28,979 INFO L290 TraceCheckUtils]: 35: Hoare triple {8333#(< main_~b~0 main_~c~0)} assume !false; {8333#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:33:28,979 INFO L290 TraceCheckUtils]: 36: Hoare triple {8333#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:28,980 INFO L290 TraceCheckUtils]: 37: Hoare triple {8340#(< main_~v~0 main_~c~0)} assume !false; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:28,980 INFO L272 TraceCheckUtils]: 38: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:28,980 INFO L290 TraceCheckUtils]: 39: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:28,980 INFO L290 TraceCheckUtils]: 40: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:28,980 INFO L290 TraceCheckUtils]: 41: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:28,980 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #102#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:28,981 INFO L272 TraceCheckUtils]: 43: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:28,981 INFO L290 TraceCheckUtils]: 44: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:28,981 INFO L290 TraceCheckUtils]: 45: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:28,981 INFO L290 TraceCheckUtils]: 46: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:28,981 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #104#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:28,981 INFO L272 TraceCheckUtils]: 48: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:28,981 INFO L290 TraceCheckUtils]: 49: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:28,982 INFO L290 TraceCheckUtils]: 50: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:28,982 INFO L290 TraceCheckUtils]: 51: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:28,982 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #106#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:28,982 INFO L272 TraceCheckUtils]: 53: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:28,982 INFO L290 TraceCheckUtils]: 54: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:28,982 INFO L290 TraceCheckUtils]: 55: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:28,982 INFO L290 TraceCheckUtils]: 56: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:28,983 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #108#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:28,983 INFO L290 TraceCheckUtils]: 58: Hoare triple {8340#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:28,984 INFO L290 TraceCheckUtils]: 59: Hoare triple {8340#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {8410#(< 0 main_~c~0)} is VALID [2022-04-08 12:33:28,984 INFO L290 TraceCheckUtils]: 60: Hoare triple {8410#(< 0 main_~c~0)} assume !false; {8410#(< 0 main_~c~0)} is VALID [2022-04-08 12:33:28,984 INFO L290 TraceCheckUtils]: 61: Hoare triple {8410#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {8410#(< 0 main_~c~0)} is VALID [2022-04-08 12:33:28,985 INFO L290 TraceCheckUtils]: 62: Hoare triple {8410#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8420#(< 0 main_~b~0)} is VALID [2022-04-08 12:33:28,985 INFO L290 TraceCheckUtils]: 63: Hoare triple {8420#(< 0 main_~b~0)} assume !false; {8420#(< 0 main_~b~0)} is VALID [2022-04-08 12:33:28,985 INFO L290 TraceCheckUtils]: 64: Hoare triple {8420#(< 0 main_~b~0)} assume !(0 != ~b~0); {8225#false} is VALID [2022-04-08 12:33:28,985 INFO L272 TraceCheckUtils]: 65: Hoare triple {8225#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8225#false} is VALID [2022-04-08 12:33:28,985 INFO L290 TraceCheckUtils]: 66: Hoare triple {8225#false} ~cond := #in~cond; {8225#false} is VALID [2022-04-08 12:33:28,986 INFO L290 TraceCheckUtils]: 67: Hoare triple {8225#false} assume 0 == ~cond; {8225#false} is VALID [2022-04-08 12:33:28,986 INFO L290 TraceCheckUtils]: 68: Hoare triple {8225#false} assume !false; {8225#false} is VALID [2022-04-08 12:33:28,986 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 12:33:28,986 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:33:29,215 INFO L290 TraceCheckUtils]: 68: Hoare triple {8225#false} assume !false; {8225#false} is VALID [2022-04-08 12:33:29,215 INFO L290 TraceCheckUtils]: 67: Hoare triple {8225#false} assume 0 == ~cond; {8225#false} is VALID [2022-04-08 12:33:29,215 INFO L290 TraceCheckUtils]: 66: Hoare triple {8225#false} ~cond := #in~cond; {8225#false} is VALID [2022-04-08 12:33:29,215 INFO L272 TraceCheckUtils]: 65: Hoare triple {8225#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {8225#false} is VALID [2022-04-08 12:33:29,216 INFO L290 TraceCheckUtils]: 64: Hoare triple {8420#(< 0 main_~b~0)} assume !(0 != ~b~0); {8225#false} is VALID [2022-04-08 12:33:29,216 INFO L290 TraceCheckUtils]: 63: Hoare triple {8420#(< 0 main_~b~0)} assume !false; {8420#(< 0 main_~b~0)} is VALID [2022-04-08 12:33:29,216 INFO L290 TraceCheckUtils]: 62: Hoare triple {8410#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8420#(< 0 main_~b~0)} is VALID [2022-04-08 12:33:29,217 INFO L290 TraceCheckUtils]: 61: Hoare triple {8410#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {8410#(< 0 main_~c~0)} is VALID [2022-04-08 12:33:29,217 INFO L290 TraceCheckUtils]: 60: Hoare triple {8410#(< 0 main_~c~0)} assume !false; {8410#(< 0 main_~c~0)} is VALID [2022-04-08 12:33:29,217 INFO L290 TraceCheckUtils]: 59: Hoare triple {8340#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {8410#(< 0 main_~c~0)} is VALID [2022-04-08 12:33:29,218 INFO L290 TraceCheckUtils]: 58: Hoare triple {8340#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:29,218 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #108#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:29,218 INFO L290 TraceCheckUtils]: 56: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:29,218 INFO L290 TraceCheckUtils]: 55: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:29,218 INFO L290 TraceCheckUtils]: 54: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:29,219 INFO L272 TraceCheckUtils]: 53: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:29,219 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #106#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:29,219 INFO L290 TraceCheckUtils]: 51: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:29,219 INFO L290 TraceCheckUtils]: 50: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:29,219 INFO L290 TraceCheckUtils]: 49: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:29,219 INFO L272 TraceCheckUtils]: 48: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:29,220 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #104#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:29,220 INFO L290 TraceCheckUtils]: 46: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:29,220 INFO L290 TraceCheckUtils]: 45: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:29,220 INFO L290 TraceCheckUtils]: 44: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:29,220 INFO L272 TraceCheckUtils]: 43: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:29,221 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {8224#true} {8340#(< main_~v~0 main_~c~0)} #102#return; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:29,221 INFO L290 TraceCheckUtils]: 41: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:29,221 INFO L290 TraceCheckUtils]: 40: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:29,221 INFO L290 TraceCheckUtils]: 39: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:29,221 INFO L272 TraceCheckUtils]: 38: Hoare triple {8340#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:29,239 INFO L290 TraceCheckUtils]: 37: Hoare triple {8340#(< main_~v~0 main_~c~0)} assume !false; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:29,240 INFO L290 TraceCheckUtils]: 36: Hoare triple {8333#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8340#(< main_~v~0 main_~c~0)} is VALID [2022-04-08 12:33:29,241 INFO L290 TraceCheckUtils]: 35: Hoare triple {8333#(< main_~b~0 main_~c~0)} assume !false; {8333#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:33:29,241 INFO L290 TraceCheckUtils]: 34: Hoare triple {8326#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8333#(< main_~b~0 main_~c~0)} is VALID [2022-04-08 12:33:29,242 INFO L290 TraceCheckUtils]: 33: Hoare triple {8326#(< main_~b~0 main_~a~0)} assume !false; {8326#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:33:29,242 INFO L290 TraceCheckUtils]: 32: Hoare triple {8322#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8326#(< main_~b~0 main_~a~0)} is VALID [2022-04-08 12:33:29,243 INFO L290 TraceCheckUtils]: 31: Hoare triple {8224#true} assume !(~c~0 >= ~b~0); {8322#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-08 12:33:29,243 INFO L290 TraceCheckUtils]: 30: Hoare triple {8224#true} assume !false; {8224#true} is VALID [2022-04-08 12:33:29,243 INFO L290 TraceCheckUtils]: 29: Hoare triple {8224#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8224#true} is VALID [2022-04-08 12:33:29,243 INFO L290 TraceCheckUtils]: 28: Hoare triple {8224#true} assume !false; {8224#true} is VALID [2022-04-08 12:33:29,243 INFO L290 TraceCheckUtils]: 27: Hoare triple {8224#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8224#true} is VALID [2022-04-08 12:33:29,244 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8224#true} {8224#true} #100#return; {8224#true} is VALID [2022-04-08 12:33:29,244 INFO L290 TraceCheckUtils]: 25: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:29,244 INFO L290 TraceCheckUtils]: 24: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:29,244 INFO L290 TraceCheckUtils]: 23: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:29,244 INFO L272 TraceCheckUtils]: 22: Hoare triple {8224#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:29,244 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8224#true} {8224#true} #98#return; {8224#true} is VALID [2022-04-08 12:33:29,244 INFO L290 TraceCheckUtils]: 20: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:29,244 INFO L290 TraceCheckUtils]: 19: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:29,244 INFO L290 TraceCheckUtils]: 18: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:29,244 INFO L272 TraceCheckUtils]: 17: Hoare triple {8224#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:29,245 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8224#true} {8224#true} #96#return; {8224#true} is VALID [2022-04-08 12:33:29,245 INFO L290 TraceCheckUtils]: 15: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:29,245 INFO L290 TraceCheckUtils]: 14: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:29,245 INFO L290 TraceCheckUtils]: 13: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:29,245 INFO L272 TraceCheckUtils]: 12: Hoare triple {8224#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:29,245 INFO L290 TraceCheckUtils]: 11: Hoare triple {8224#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8224#true} is VALID [2022-04-08 12:33:29,245 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8224#true} {8224#true} #94#return; {8224#true} is VALID [2022-04-08 12:33:29,245 INFO L290 TraceCheckUtils]: 9: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:29,245 INFO L290 TraceCheckUtils]: 8: Hoare triple {8224#true} assume !(0 == ~cond); {8224#true} is VALID [2022-04-08 12:33:29,245 INFO L290 TraceCheckUtils]: 7: Hoare triple {8224#true} ~cond := #in~cond; {8224#true} is VALID [2022-04-08 12:33:29,246 INFO L272 TraceCheckUtils]: 6: Hoare triple {8224#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {8224#true} is VALID [2022-04-08 12:33:29,246 INFO L290 TraceCheckUtils]: 5: Hoare triple {8224#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8224#true} is VALID [2022-04-08 12:33:29,246 INFO L272 TraceCheckUtils]: 4: Hoare triple {8224#true} call #t~ret6 := main(); {8224#true} is VALID [2022-04-08 12:33:29,246 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8224#true} {8224#true} #112#return; {8224#true} is VALID [2022-04-08 12:33:29,246 INFO L290 TraceCheckUtils]: 2: Hoare triple {8224#true} assume true; {8224#true} is VALID [2022-04-08 12:33:29,246 INFO L290 TraceCheckUtils]: 1: Hoare triple {8224#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(11, 2);call #Ultimate.allocInit(12, 3); {8224#true} is VALID [2022-04-08 12:33:29,246 INFO L272 TraceCheckUtils]: 0: Hoare triple {8224#true} call ULTIMATE.init(); {8224#true} is VALID [2022-04-08 12:33:29,246 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-08 12:33:29,247 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:33:29,247 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1767579439] [2022-04-08 12:33:29,247 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:33:29,247 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [371926259] [2022-04-08 12:33:29,247 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [371926259] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:33:29,247 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:33:29,247 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-08 12:33:29,248 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:33:29,248 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1907174802] [2022-04-08 12:33:29,248 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1907174802] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:33:29,248 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:33:29,248 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 12:33:29,248 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [422709787] [2022-04-08 12:33:29,248 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:33:29,248 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 69 [2022-04-08 12:33:29,249 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:33:29,249 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 12:33:29,284 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 12:33:29,284 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 12:33:29,285 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:33:29,285 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 12:33:29,285 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-08 12:33:29,285 INFO L87 Difference]: Start difference. First operand 193 states and 275 transitions. Second operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 12:33:31,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:31,082 INFO L93 Difference]: Finished difference Result 288 states and 424 transitions. [2022-04-08 12:33:31,082 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-08 12:33:31,082 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 69 [2022-04-08 12:33:31,082 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:33:31,082 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 12:33:31,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-08 12:33:31,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 12:33:31,088 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 158 transitions. [2022-04-08 12:33:31,088 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 158 transitions. [2022-04-08 12:33:31,225 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 12:33:31,234 INFO L225 Difference]: With dead ends: 288 [2022-04-08 12:33:31,234 INFO L226 Difference]: Without dead ends: 281 [2022-04-08 12:33:31,235 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 134 SyntacticMatches, 2 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=249, Unknown=0, NotChecked=0, Total=342 [2022-04-08 12:33:31,235 INFO L913 BasicCegarLoop]: 87 mSDtfsCounter, 48 mSDsluCounter, 231 mSDsCounter, 0 mSdLazyCounter, 278 mSolverCounterSat, 84 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 318 SdHoareTripleChecker+Invalid, 362 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 84 IncrementalHoareTripleChecker+Valid, 278 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-08 12:33:31,236 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [52 Valid, 318 Invalid, 362 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [84 Valid, 278 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-08 12:33:31,236 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 281 states. [2022-04-08 12:33:31,753 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 281 to 208. [2022-04-08 12:33:31,753 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:33:31,754 INFO L82 GeneralOperation]: Start isEquivalent. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:31,754 INFO L74 IsIncluded]: Start isIncluded. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:31,755 INFO L87 Difference]: Start difference. First operand 281 states. Second operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:31,765 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:31,766 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-08 12:33:31,766 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-08 12:33:31,767 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:33:31,767 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:33:31,768 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 281 states. [2022-04-08 12:33:31,768 INFO L87 Difference]: Start difference. First operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 281 states. [2022-04-08 12:33:31,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:31,779 INFO L93 Difference]: Finished difference Result 281 states and 417 transitions. [2022-04-08 12:33:31,779 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 417 transitions. [2022-04-08 12:33:31,780 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:33:31,780 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:33:31,780 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:33:31,780 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:33:31,781 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 116 states have (on average 1.206896551724138) internal successors, (140), 122 states have internal predecessors, (140), 79 states have call successors, (79), 13 states have call predecessors, (79), 12 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:31,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 296 transitions. [2022-04-08 12:33:31,787 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 296 transitions. Word has length 69 [2022-04-08 12:33:31,788 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:33:31,788 INFO L478 AbstractCegarLoop]: Abstraction has 208 states and 296 transitions. [2022-04-08 12:33:31,788 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 8 states have internal predecessors, (31), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 12:33:31,788 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 296 transitions. [2022-04-08 12:33:32,228 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 296 edges. 296 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:33:32,228 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 296 transitions. [2022-04-08 12:33:32,229 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 75 [2022-04-08 12:33:32,229 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:33:32,229 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 4, 4, 4, 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 12:33:32,246 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 12:33:32,436 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 12:33:32,436 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:33:32,436 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:33:32,436 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 1 times [2022-04-08 12:33:32,436 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:33:32,437 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1571841298] [2022-04-08 12:33:32,437 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:33:32,437 INFO L85 PathProgramCache]: Analyzing trace with hash -298771846, now seen corresponding path program 2 times [2022-04-08 12:33:32,437 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:33:32,437 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1297310594] [2022-04-08 12:33:32,437 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:33:32,437 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:33:32,453 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:33:32,453 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1970536816] [2022-04-08 12:33:32,453 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:33:32,454 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:33:32,454 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:33:32,454 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 12:33:32,462 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 12:33:32,510 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:33:32,510 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:33:32,511 INFO L263 TraceCheckSpWp]: Trace formula consists of 186 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-08 12:33:32,524 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:33:32,525 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:33:33,652 INFO L272 TraceCheckUtils]: 0: Hoare triple {10226#true} call ULTIMATE.init(); {10226#true} is VALID [2022-04-08 12:33:33,652 INFO L290 TraceCheckUtils]: 1: Hoare triple {10226#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(11, 2);call #Ultimate.allocInit(12, 3); {10226#true} is VALID [2022-04-08 12:33:33,652 INFO L290 TraceCheckUtils]: 2: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:33,652 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10226#true} {10226#true} #112#return; {10226#true} is VALID [2022-04-08 12:33:33,652 INFO L272 TraceCheckUtils]: 4: Hoare triple {10226#true} call #t~ret6 := main(); {10226#true} is VALID [2022-04-08 12:33:33,652 INFO L290 TraceCheckUtils]: 5: Hoare triple {10226#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {10226#true} is VALID [2022-04-08 12:33:33,653 INFO L272 TraceCheckUtils]: 6: Hoare triple {10226#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:33,653 INFO L290 TraceCheckUtils]: 7: Hoare triple {10226#true} ~cond := #in~cond; {10252#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:33:33,653 INFO L290 TraceCheckUtils]: 8: Hoare triple {10252#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {10256#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:33:33,653 INFO L290 TraceCheckUtils]: 9: Hoare triple {10256#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {10256#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:33:33,654 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10256#(not (= |assume_abort_if_not_#in~cond| 0))} {10226#true} #94#return; {10263#(and (<= 0 main_~x~0) (<= main_~x~0 5))} is VALID [2022-04-08 12:33:33,654 INFO L290 TraceCheckUtils]: 11: Hoare triple {10263#(and (<= 0 main_~x~0) (<= main_~x~0 5))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10263#(and (<= 0 main_~x~0) (<= main_~x~0 5))} is VALID [2022-04-08 12:33:33,654 INFO L272 TraceCheckUtils]: 12: Hoare triple {10263#(and (<= 0 main_~x~0) (<= main_~x~0 5))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:33,655 INFO L290 TraceCheckUtils]: 13: Hoare triple {10226#true} ~cond := #in~cond; {10252#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:33:33,655 INFO L290 TraceCheckUtils]: 14: Hoare triple {10252#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {10256#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:33:33,655 INFO L290 TraceCheckUtils]: 15: Hoare triple {10256#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {10256#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:33:33,656 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10256#(not (= |assume_abort_if_not_#in~cond| 0))} {10263#(and (<= 0 main_~x~0) (<= main_~x~0 5))} #96#return; {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} is VALID [2022-04-08 12:33:33,656 INFO L272 TraceCheckUtils]: 17: Hoare triple {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:33,656 INFO L290 TraceCheckUtils]: 18: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:33,656 INFO L290 TraceCheckUtils]: 19: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:33,656 INFO L290 TraceCheckUtils]: 20: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:33,657 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10226#true} {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} #98#return; {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} is VALID [2022-04-08 12:33:33,657 INFO L272 TraceCheckUtils]: 22: Hoare triple {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:33,657 INFO L290 TraceCheckUtils]: 23: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:33,657 INFO L290 TraceCheckUtils]: 24: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:33,657 INFO L290 TraceCheckUtils]: 25: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:33,657 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10226#true} {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} #100#return; {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} is VALID [2022-04-08 12:33:33,658 INFO L290 TraceCheckUtils]: 27: Hoare triple {10282#(and (<= 0 main_~y~0) (<= 0 main_~x~0) (<= main_~x~0 5) (<= main_~y~0 5))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10316#(and (<= main_~b~0 5) (<= 0 main_~b~0) (<= main_~a~0 5))} is VALID [2022-04-08 12:33:33,658 INFO L290 TraceCheckUtils]: 28: Hoare triple {10316#(and (<= main_~b~0 5) (<= 0 main_~b~0) (<= main_~a~0 5))} assume !false; {10316#(and (<= main_~b~0 5) (<= 0 main_~b~0) (<= main_~a~0 5))} is VALID [2022-04-08 12:33:33,658 INFO L290 TraceCheckUtils]: 29: Hoare triple {10316#(and (<= main_~b~0 5) (<= 0 main_~b~0) (<= main_~a~0 5))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10323#(and (<= main_~c~0 5) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,659 INFO L290 TraceCheckUtils]: 30: Hoare triple {10323#(and (<= main_~c~0 5) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {10323#(and (<= main_~c~0 5) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,667 INFO L290 TraceCheckUtils]: 31: Hoare triple {10323#(and (<= main_~c~0 5) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,668 INFO L290 TraceCheckUtils]: 32: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,668 INFO L272 TraceCheckUtils]: 33: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:33,668 INFO L290 TraceCheckUtils]: 34: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:33,668 INFO L290 TraceCheckUtils]: 35: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:33,668 INFO L290 TraceCheckUtils]: 36: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:33,669 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10226#true} {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #102#return; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,670 INFO L272 TraceCheckUtils]: 38: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:33,670 INFO L290 TraceCheckUtils]: 39: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:33,670 INFO L290 TraceCheckUtils]: 40: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:33,670 INFO L290 TraceCheckUtils]: 41: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:33,671 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10226#true} {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #104#return; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,671 INFO L272 TraceCheckUtils]: 43: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:33,671 INFO L290 TraceCheckUtils]: 44: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:33,671 INFO L290 TraceCheckUtils]: 45: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:33,671 INFO L290 TraceCheckUtils]: 46: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:33,672 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10226#true} {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #106#return; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,672 INFO L272 TraceCheckUtils]: 48: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:33,672 INFO L290 TraceCheckUtils]: 49: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:33,672 INFO L290 TraceCheckUtils]: 50: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:33,672 INFO L290 TraceCheckUtils]: 51: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:33,673 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10226#true} {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #108#return; {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,674 INFO L290 TraceCheckUtils]: 53: Hoare triple {10330#(and (= main_~b~0 main_~v~0) (<= main_~c~0 5) (<= main_~b~0 5) (= main_~d~0 1) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,675 INFO L290 TraceCheckUtils]: 54: Hoare triple {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} assume !false; {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,675 INFO L272 TraceCheckUtils]: 55: Hoare triple {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:33,675 INFO L290 TraceCheckUtils]: 56: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:33,675 INFO L290 TraceCheckUtils]: 57: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:33,675 INFO L290 TraceCheckUtils]: 58: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:33,676 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10226#true} {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #102#return; {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,676 INFO L272 TraceCheckUtils]: 60: Hoare triple {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:33,676 INFO L290 TraceCheckUtils]: 61: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:33,676 INFO L290 TraceCheckUtils]: 62: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:33,677 INFO L290 TraceCheckUtils]: 63: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:33,677 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {10226#true} {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #104#return; {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,678 INFO L272 TraceCheckUtils]: 65: Hoare triple {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:33,678 INFO L290 TraceCheckUtils]: 66: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:33,678 INFO L290 TraceCheckUtils]: 67: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:33,678 INFO L290 TraceCheckUtils]: 68: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:33,679 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {10226#true} {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} #106#return; {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-08 12:33:33,679 INFO L272 TraceCheckUtils]: 70: Hoare triple {10397#(and (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) 5) (= main_~d~0 2) (not (= main_~b~0 0)) (<= 0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10449#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:33:33,680 INFO L290 TraceCheckUtils]: 71: Hoare triple {10449#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10453#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:33:33,680 INFO L290 TraceCheckUtils]: 72: Hoare triple {10453#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10227#false} is VALID [2022-04-08 12:33:33,680 INFO L290 TraceCheckUtils]: 73: Hoare triple {10227#false} assume !false; {10227#false} is VALID [2022-04-08 12:33:33,681 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 14 proven. 17 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-08 12:33:33,681 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:33:34,050 INFO L290 TraceCheckUtils]: 73: Hoare triple {10227#false} assume !false; {10227#false} is VALID [2022-04-08 12:33:34,051 INFO L290 TraceCheckUtils]: 72: Hoare triple {10453#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10227#false} is VALID [2022-04-08 12:33:34,051 INFO L290 TraceCheckUtils]: 71: Hoare triple {10449#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10453#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:33:34,052 INFO L272 TraceCheckUtils]: 70: Hoare triple {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10449#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:33:34,052 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {10226#true} {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} #106#return; {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 12:33:34,052 INFO L290 TraceCheckUtils]: 68: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,053 INFO L290 TraceCheckUtils]: 67: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:34,053 INFO L290 TraceCheckUtils]: 66: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:34,053 INFO L272 TraceCheckUtils]: 65: Hoare triple {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:34,059 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {10226#true} {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 12:33:34,059 INFO L290 TraceCheckUtils]: 63: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,059 INFO L290 TraceCheckUtils]: 62: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:34,059 INFO L290 TraceCheckUtils]: 61: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:34,059 INFO L272 TraceCheckUtils]: 60: Hoare triple {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:34,060 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10226#true} {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 12:33:34,060 INFO L290 TraceCheckUtils]: 58: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,060 INFO L290 TraceCheckUtils]: 57: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:34,060 INFO L290 TraceCheckUtils]: 56: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:34,060 INFO L272 TraceCheckUtils]: 55: Hoare triple {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:34,060 INFO L290 TraceCheckUtils]: 54: Hoare triple {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !false; {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 12:33:34,063 INFO L290 TraceCheckUtils]: 53: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {10469#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-08 12:33:34,063 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {10226#true} {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} #108#return; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 12:33:34,064 INFO L290 TraceCheckUtils]: 51: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,064 INFO L290 TraceCheckUtils]: 50: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:34,064 INFO L290 TraceCheckUtils]: 49: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:34,064 INFO L272 TraceCheckUtils]: 48: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:34,064 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {10226#true} {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} #106#return; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 12:33:34,064 INFO L290 TraceCheckUtils]: 46: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,064 INFO L290 TraceCheckUtils]: 45: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:34,065 INFO L290 TraceCheckUtils]: 44: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:34,065 INFO L272 TraceCheckUtils]: 43: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:34,065 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {10226#true} {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} #104#return; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 12:33:34,065 INFO L290 TraceCheckUtils]: 41: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,065 INFO L290 TraceCheckUtils]: 40: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:34,066 INFO L290 TraceCheckUtils]: 39: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:34,066 INFO L272 TraceCheckUtils]: 38: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:34,076 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10226#true} {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} #102#return; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 12:33:34,076 INFO L290 TraceCheckUtils]: 36: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,076 INFO L290 TraceCheckUtils]: 35: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:34,076 INFO L290 TraceCheckUtils]: 34: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:34,076 INFO L272 TraceCheckUtils]: 33: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:34,077 INFO L290 TraceCheckUtils]: 32: Hoare triple {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} assume !false; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 12:33:34,077 INFO L290 TraceCheckUtils]: 31: Hoare triple {10226#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10521#(or (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2))) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 12:33:34,077 INFO L290 TraceCheckUtils]: 30: Hoare triple {10226#true} assume !false; {10226#true} is VALID [2022-04-08 12:33:34,077 INFO L290 TraceCheckUtils]: 29: Hoare triple {10226#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10226#true} is VALID [2022-04-08 12:33:34,077 INFO L290 TraceCheckUtils]: 28: Hoare triple {10226#true} assume !false; {10226#true} is VALID [2022-04-08 12:33:34,077 INFO L290 TraceCheckUtils]: 27: Hoare triple {10226#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10226#true} is VALID [2022-04-08 12:33:34,077 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10226#true} {10226#true} #100#return; {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L290 TraceCheckUtils]: 25: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L290 TraceCheckUtils]: 24: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L290 TraceCheckUtils]: 23: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L272 TraceCheckUtils]: 22: Hoare triple {10226#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10226#true} {10226#true} #98#return; {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L290 TraceCheckUtils]: 20: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L290 TraceCheckUtils]: 19: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L290 TraceCheckUtils]: 18: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L272 TraceCheckUtils]: 17: Hoare triple {10226#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10226#true} {10226#true} #96#return; {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L290 TraceCheckUtils]: 15: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L290 TraceCheckUtils]: 14: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L290 TraceCheckUtils]: 13: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:34,078 INFO L272 TraceCheckUtils]: 12: Hoare triple {10226#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L290 TraceCheckUtils]: 11: Hoare triple {10226#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10226#true} {10226#true} #94#return; {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L290 TraceCheckUtils]: 9: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L290 TraceCheckUtils]: 8: Hoare triple {10226#true} assume !(0 == ~cond); {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L290 TraceCheckUtils]: 7: Hoare triple {10226#true} ~cond := #in~cond; {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L272 TraceCheckUtils]: 6: Hoare triple {10226#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L290 TraceCheckUtils]: 5: Hoare triple {10226#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L272 TraceCheckUtils]: 4: Hoare triple {10226#true} call #t~ret6 := main(); {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10226#true} {10226#true} #112#return; {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L290 TraceCheckUtils]: 2: Hoare triple {10226#true} assume true; {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L290 TraceCheckUtils]: 1: Hoare triple {10226#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(11, 2);call #Ultimate.allocInit(12, 3); {10226#true} is VALID [2022-04-08 12:33:34,079 INFO L272 TraceCheckUtils]: 0: Hoare triple {10226#true} call ULTIMATE.init(); {10226#true} is VALID [2022-04-08 12:33:34,080 INFO L134 CoverageAnalysis]: Checked inductivity of 127 backedges. 19 proven. 0 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-08 12:33:34,080 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:33:34,080 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1297310594] [2022-04-08 12:33:34,080 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:33:34,080 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1970536816] [2022-04-08 12:33:34,080 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1970536816] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 12:33:34,080 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 12:33:34,080 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [12] total 14 [2022-04-08 12:33:34,080 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:33:34,080 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1571841298] [2022-04-08 12:33:34,081 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1571841298] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:33:34,081 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:33:34,081 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 12:33:34,081 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [767418715] [2022-04-08 12:33:34,081 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:33:34,081 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 74 [2022-04-08 12:33:34,081 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:33:34,082 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-08 12:33:34,118 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 12:33:34,119 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 12:33:34,119 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:33:34,119 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 12:33:34,119 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=150, Unknown=0, NotChecked=0, Total=182 [2022-04-08 12:33:34,119 INFO L87 Difference]: Start difference. First operand 208 states and 296 transitions. Second operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-08 12:33:34,776 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:34,776 INFO L93 Difference]: Finished difference Result 214 states and 301 transitions. [2022-04-08 12:33:34,776 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 12:33:34,776 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 74 [2022-04-08 12:33:34,776 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:33:34,776 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-08 12:33:34,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-08 12:33:34,777 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-08 12:33:34,778 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-08 12:33:34,778 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-08 12:33:34,819 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:33:34,824 INFO L225 Difference]: With dead ends: 214 [2022-04-08 12:33:34,824 INFO L226 Difference]: Without dead ends: 212 [2022-04-08 12:33:34,824 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 134 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=174, Unknown=0, NotChecked=0, Total=210 [2022-04-08 12:33:34,825 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 13 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:33:34,825 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 139 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 12:33:34,825 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 212 states. [2022-04-08 12:33:35,300 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 212 to 212. [2022-04-08 12:33:35,301 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:33:35,301 INFO L82 GeneralOperation]: Start isEquivalent. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:35,302 INFO L74 IsIncluded]: Start isIncluded. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:35,302 INFO L87 Difference]: Start difference. First operand 212 states. Second operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:35,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:35,308 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-08 12:33:35,308 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-08 12:33:35,309 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:33:35,309 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:33:35,310 INFO L74 IsIncluded]: Start isIncluded. First operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 212 states. [2022-04-08 12:33:35,310 INFO L87 Difference]: Start difference. First operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 212 states. [2022-04-08 12:33:35,316 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:35,316 INFO L93 Difference]: Finished difference Result 212 states and 299 transitions. [2022-04-08 12:33:35,316 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-08 12:33:35,317 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:33:35,317 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:33:35,317 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:33:35,317 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:33:35,317 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 212 states, 119 states have (on average 1.2016806722689075) internal successors, (143), 125 states have internal predecessors, (143), 79 states have call successors, (79), 14 states have call predecessors, (79), 13 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:35,323 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 212 states to 212 states and 299 transitions. [2022-04-08 12:33:35,324 INFO L78 Accepts]: Start accepts. Automaton has 212 states and 299 transitions. Word has length 74 [2022-04-08 12:33:35,324 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:33:35,324 INFO L478 AbstractCegarLoop]: Abstraction has 212 states and 299 transitions. [2022-04-08 12:33:35,324 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (14), 2 states have call predecessors, (14), 1 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-08 12:33:35,324 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 212 states and 299 transitions. [2022-04-08 12:33:35,836 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 299 edges. 299 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:33:35,837 INFO L276 IsEmpty]: Start isEmpty. Operand 212 states and 299 transitions. [2022-04-08 12:33:35,837 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2022-04-08 12:33:35,837 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:33:35,837 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 3, 3, 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] [2022-04-08 12:33:35,853 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 12:33:36,038 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 12:33:36,038 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:33:36,038 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:33:36,038 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 1 times [2022-04-08 12:33:36,039 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:33:36,039 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1088897512] [2022-04-08 12:33:36,039 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:33:36,039 INFO L85 PathProgramCache]: Analyzing trace with hash -2089538094, now seen corresponding path program 2 times [2022-04-08 12:33:36,039 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:33:36,039 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1725495505] [2022-04-08 12:33:36,039 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:33:36,039 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:33:36,058 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:33:36,059 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1245241137] [2022-04-08 12:33:36,059 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:33:36,059 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:33:36,059 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:33:36,060 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 12:33:36,080 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 12:33:36,126 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:33:36,126 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:33:36,127 INFO L263 TraceCheckSpWp]: Trace formula consists of 209 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-08 12:33:36,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:33:36,142 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:33:36,337 INFO L272 TraceCheckUtils]: 0: Hoare triple {11961#true} call ULTIMATE.init(); {11961#true} is VALID [2022-04-08 12:33:36,337 INFO L290 TraceCheckUtils]: 1: Hoare triple {11961#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(11, 2);call #Ultimate.allocInit(12, 3); {11961#true} is VALID [2022-04-08 12:33:36,337 INFO L290 TraceCheckUtils]: 2: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:36,337 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11961#true} {11961#true} #112#return; {11961#true} is VALID [2022-04-08 12:33:36,337 INFO L272 TraceCheckUtils]: 4: Hoare triple {11961#true} call #t~ret6 := main(); {11961#true} is VALID [2022-04-08 12:33:36,337 INFO L290 TraceCheckUtils]: 5: Hoare triple {11961#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {11961#true} is VALID [2022-04-08 12:33:36,337 INFO L272 TraceCheckUtils]: 6: Hoare triple {11961#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:36,338 INFO L290 TraceCheckUtils]: 7: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:36,338 INFO L290 TraceCheckUtils]: 8: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:36,338 INFO L290 TraceCheckUtils]: 9: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:36,338 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11961#true} {11961#true} #94#return; {11961#true} is VALID [2022-04-08 12:33:36,338 INFO L290 TraceCheckUtils]: 11: Hoare triple {11961#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11961#true} is VALID [2022-04-08 12:33:36,338 INFO L272 TraceCheckUtils]: 12: Hoare triple {11961#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:36,338 INFO L290 TraceCheckUtils]: 13: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:36,338 INFO L290 TraceCheckUtils]: 14: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:36,338 INFO L290 TraceCheckUtils]: 15: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:36,338 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11961#true} {11961#true} #96#return; {11961#true} is VALID [2022-04-08 12:33:36,339 INFO L272 TraceCheckUtils]: 17: Hoare triple {11961#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:36,339 INFO L290 TraceCheckUtils]: 18: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:36,339 INFO L290 TraceCheckUtils]: 19: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:36,339 INFO L290 TraceCheckUtils]: 20: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:36,339 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11961#true} {11961#true} #98#return; {11961#true} is VALID [2022-04-08 12:33:36,339 INFO L272 TraceCheckUtils]: 22: Hoare triple {11961#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:36,339 INFO L290 TraceCheckUtils]: 23: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:36,339 INFO L290 TraceCheckUtils]: 24: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:36,339 INFO L290 TraceCheckUtils]: 25: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:36,340 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11961#true} {11961#true} #100#return; {11961#true} is VALID [2022-04-08 12:33:36,340 INFO L290 TraceCheckUtils]: 27: Hoare triple {11961#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11961#true} is VALID [2022-04-08 12:33:36,340 INFO L290 TraceCheckUtils]: 28: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 12:33:36,340 INFO L290 TraceCheckUtils]: 29: Hoare triple {11961#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11961#true} is VALID [2022-04-08 12:33:36,340 INFO L290 TraceCheckUtils]: 30: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 12:33:36,340 INFO L290 TraceCheckUtils]: 31: Hoare triple {11961#true} assume !(~c~0 >= ~b~0); {11961#true} is VALID [2022-04-08 12:33:36,340 INFO L290 TraceCheckUtils]: 32: Hoare triple {11961#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11961#true} is VALID [2022-04-08 12:33:36,340 INFO L290 TraceCheckUtils]: 33: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 12:33:36,340 INFO L290 TraceCheckUtils]: 34: Hoare triple {11961#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11961#true} is VALID [2022-04-08 12:33:36,340 INFO L290 TraceCheckUtils]: 35: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 12:33:36,341 INFO L290 TraceCheckUtils]: 36: Hoare triple {11961#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11961#true} is VALID [2022-04-08 12:33:36,341 INFO L290 TraceCheckUtils]: 37: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 12:33:36,341 INFO L272 TraceCheckUtils]: 38: Hoare triple {11961#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:36,341 INFO L290 TraceCheckUtils]: 39: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:36,341 INFO L290 TraceCheckUtils]: 40: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:36,341 INFO L290 TraceCheckUtils]: 41: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:36,341 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11961#true} {11961#true} #102#return; {11961#true} is VALID [2022-04-08 12:33:36,341 INFO L272 TraceCheckUtils]: 43: Hoare triple {11961#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:36,342 INFO L290 TraceCheckUtils]: 44: Hoare triple {11961#true} ~cond := #in~cond; {12098#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:33:36,342 INFO L290 TraceCheckUtils]: 45: Hoare triple {12098#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:33:36,342 INFO L290 TraceCheckUtils]: 46: Hoare triple {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:33:36,343 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} {11961#true} #104#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:36,343 INFO L272 TraceCheckUtils]: 48: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:36,343 INFO L290 TraceCheckUtils]: 49: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:36,344 INFO L290 TraceCheckUtils]: 50: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:36,344 INFO L290 TraceCheckUtils]: 51: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:36,345 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {11961#true} {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #106#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:36,345 INFO L272 TraceCheckUtils]: 53: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:36,345 INFO L290 TraceCheckUtils]: 54: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:36,345 INFO L290 TraceCheckUtils]: 55: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:36,345 INFO L290 TraceCheckUtils]: 56: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:36,346 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {11961#true} {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #108#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:36,346 INFO L290 TraceCheckUtils]: 58: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:36,347 INFO L290 TraceCheckUtils]: 59: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:36,347 INFO L290 TraceCheckUtils]: 60: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:36,347 INFO L290 TraceCheckUtils]: 61: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:36,348 INFO L290 TraceCheckUtils]: 62: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:36,348 INFO L290 TraceCheckUtils]: 63: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:36,349 INFO L290 TraceCheckUtils]: 64: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:36,349 INFO L290 TraceCheckUtils]: 65: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:36,350 INFO L290 TraceCheckUtils]: 66: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:36,350 INFO L290 TraceCheckUtils]: 67: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:36,351 INFO L272 TraceCheckUtils]: 68: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12174#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:33:36,351 INFO L290 TraceCheckUtils]: 69: Hoare triple {12174#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12178#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:33:36,352 INFO L290 TraceCheckUtils]: 70: Hoare triple {12178#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11962#false} is VALID [2022-04-08 12:33:36,352 INFO L290 TraceCheckUtils]: 71: Hoare triple {11962#false} assume !false; {11962#false} is VALID [2022-04-08 12:33:36,353 INFO L134 CoverageAnalysis]: Checked inductivity of 77 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 43 trivial. 0 not checked. [2022-04-08 12:33:36,353 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:33:57,092 INFO L290 TraceCheckUtils]: 71: Hoare triple {11962#false} assume !false; {11962#false} is VALID [2022-04-08 12:33:57,092 INFO L290 TraceCheckUtils]: 70: Hoare triple {12178#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11962#false} is VALID [2022-04-08 12:33:57,093 INFO L290 TraceCheckUtils]: 69: Hoare triple {12174#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12178#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:33:57,093 INFO L272 TraceCheckUtils]: 68: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12174#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:33:57,094 INFO L290 TraceCheckUtils]: 67: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:57,094 INFO L290 TraceCheckUtils]: 66: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:57,094 INFO L290 TraceCheckUtils]: 65: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:57,095 INFO L290 TraceCheckUtils]: 64: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:57,095 INFO L290 TraceCheckUtils]: 63: Hoare triple {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:57,095 INFO L290 TraceCheckUtils]: 62: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12155#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:33:57,096 INFO L290 TraceCheckUtils]: 61: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:57,096 INFO L290 TraceCheckUtils]: 60: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:57,096 INFO L290 TraceCheckUtils]: 59: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:57,097 INFO L290 TraceCheckUtils]: 58: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:57,097 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {11961#true} {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #108#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:57,097 INFO L290 TraceCheckUtils]: 56: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:57,098 INFO L290 TraceCheckUtils]: 55: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:57,098 INFO L290 TraceCheckUtils]: 54: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:57,098 INFO L272 TraceCheckUtils]: 53: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:57,098 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {11961#true} {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #106#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:57,098 INFO L290 TraceCheckUtils]: 51: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:57,098 INFO L290 TraceCheckUtils]: 50: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:57,099 INFO L290 TraceCheckUtils]: 49: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:57,099 INFO L272 TraceCheckUtils]: 48: Hoare triple {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:57,100 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} {11961#true} #104#return; {12109#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:33:57,100 INFO L290 TraceCheckUtils]: 46: Hoare triple {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:33:57,101 INFO L290 TraceCheckUtils]: 45: Hoare triple {12266#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12102#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:33:57,101 INFO L290 TraceCheckUtils]: 44: Hoare triple {11961#true} ~cond := #in~cond; {12266#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:33:57,101 INFO L272 TraceCheckUtils]: 43: Hoare triple {11961#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:57,101 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {11961#true} {11961#true} #102#return; {11961#true} is VALID [2022-04-08 12:33:57,101 INFO L290 TraceCheckUtils]: 41: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:57,101 INFO L290 TraceCheckUtils]: 40: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 39: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L272 TraceCheckUtils]: 38: Hoare triple {11961#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 37: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 36: Hoare triple {11961#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 35: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 34: Hoare triple {11961#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 33: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 32: Hoare triple {11961#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 31: Hoare triple {11961#true} assume !(~c~0 >= ~b~0); {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 30: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 29: Hoare triple {11961#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 28: Hoare triple {11961#true} assume !false; {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L290 TraceCheckUtils]: 27: Hoare triple {11961#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11961#true} is VALID [2022-04-08 12:33:57,102 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11961#true} {11961#true} #100#return; {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L290 TraceCheckUtils]: 25: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L290 TraceCheckUtils]: 24: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L290 TraceCheckUtils]: 23: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L272 TraceCheckUtils]: 22: Hoare triple {11961#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11961#true} {11961#true} #98#return; {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L290 TraceCheckUtils]: 20: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L290 TraceCheckUtils]: 19: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L290 TraceCheckUtils]: 18: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L272 TraceCheckUtils]: 17: Hoare triple {11961#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11961#true} {11961#true} #96#return; {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L290 TraceCheckUtils]: 15: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L290 TraceCheckUtils]: 14: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:57,103 INFO L290 TraceCheckUtils]: 13: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L272 TraceCheckUtils]: 12: Hoare triple {11961#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L290 TraceCheckUtils]: 11: Hoare triple {11961#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11961#true} {11961#true} #94#return; {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L290 TraceCheckUtils]: 9: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L290 TraceCheckUtils]: 8: Hoare triple {11961#true} assume !(0 == ~cond); {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L290 TraceCheckUtils]: 7: Hoare triple {11961#true} ~cond := #in~cond; {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L272 TraceCheckUtils]: 6: Hoare triple {11961#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L290 TraceCheckUtils]: 5: Hoare triple {11961#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L272 TraceCheckUtils]: 4: Hoare triple {11961#true} call #t~ret6 := main(); {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11961#true} {11961#true} #112#return; {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L290 TraceCheckUtils]: 2: Hoare triple {11961#true} assume true; {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L290 TraceCheckUtils]: 1: Hoare triple {11961#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(11, 2);call #Ultimate.allocInit(12, 3); {11961#true} is VALID [2022-04-08 12:33:57,104 INFO L272 TraceCheckUtils]: 0: Hoare triple {11961#true} call ULTIMATE.init(); {11961#true} is VALID [2022-04-08 12:33:57,105 INFO L134 CoverageAnalysis]: Checked inductivity of 77 backedges. 25 proven. 9 refuted. 0 times theorem prover too weak. 43 trivial. 0 not checked. [2022-04-08 12:33:57,105 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:33:57,105 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1725495505] [2022-04-08 12:33:57,105 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:33:57,105 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1245241137] [2022-04-08 12:33:57,105 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1245241137] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:33:57,105 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:33:57,105 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-08 12:33:57,106 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:33:57,106 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1088897512] [2022-04-08 12:33:57,106 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1088897512] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:33:57,106 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:33:57,106 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 12:33:57,106 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1961572356] [2022-04-08 12:33:57,106 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:33:57,107 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 72 [2022-04-08 12:33:57,107 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:33:57,107 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 12:33:57,144 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 12:33:57,144 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 12:33:57,144 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:33:57,144 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 12:33:57,145 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-08 12:33:57,145 INFO L87 Difference]: Start difference. First operand 212 states and 299 transitions. Second operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 12:33:58,099 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:58,099 INFO L93 Difference]: Finished difference Result 226 states and 310 transitions. [2022-04-08 12:33:58,099 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 12:33:58,099 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 72 [2022-04-08 12:33:58,099 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:33:58,100 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 12:33:58,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-08 12:33:58,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 12:33:58,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 58 transitions. [2022-04-08 12:33:58,101 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 58 transitions. [2022-04-08 12:33:58,159 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:33:58,164 INFO L225 Difference]: With dead ends: 226 [2022-04-08 12:33:58,164 INFO L226 Difference]: Without dead ends: 224 [2022-04-08 12:33:58,164 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 136 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-08 12:33:58,165 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 21 mSDsluCounter, 140 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 173 SdHoareTripleChecker+Invalid, 122 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:33:58,165 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 173 Invalid, 122 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 112 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-08 12:33:58,165 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 224 states. [2022-04-08 12:33:58,646 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 224 to 224. [2022-04-08 12:33:58,646 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:33:58,647 INFO L82 GeneralOperation]: Start isEquivalent. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:58,647 INFO L74 IsIncluded]: Start isIncluded. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:58,648 INFO L87 Difference]: Start difference. First operand 224 states. Second operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:58,654 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:58,654 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-08 12:33:58,654 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-08 12:33:58,655 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:33:58,655 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:33:58,655 INFO L74 IsIncluded]: Start isIncluded. First operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 224 states. [2022-04-08 12:33:58,656 INFO L87 Difference]: Start difference. First operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) Second operand 224 states. [2022-04-08 12:33:58,662 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:33:58,662 INFO L93 Difference]: Finished difference Result 224 states and 308 transitions. [2022-04-08 12:33:58,662 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-08 12:33:58,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:33:58,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:33:58,663 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:33:58,663 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:33:58,663 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 224 states, 128 states have (on average 1.1875) internal successors, (152), 134 states have internal predecessors, (152), 79 states have call successors, (79), 17 states have call predecessors, (79), 16 states have return successors, (77), 72 states have call predecessors, (77), 77 states have call successors, (77) [2022-04-08 12:33:58,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 224 states to 224 states and 308 transitions. [2022-04-08 12:33:58,670 INFO L78 Accepts]: Start accepts. Automaton has 224 states and 308 transitions. Word has length 72 [2022-04-08 12:33:58,672 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:33:58,672 INFO L478 AbstractCegarLoop]: Abstraction has 224 states and 308 transitions. [2022-04-08 12:33:58,672 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-08 12:33:58,672 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 224 states and 308 transitions. [2022-04-08 12:33:59,213 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 308 edges. 308 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:33:59,213 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 308 transitions. [2022-04-08 12:33:59,214 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-08 12:33:59,214 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:33:59,214 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 3, 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] [2022-04-08 12:33:59,230 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-04-08 12:33:59,414 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 12:33:59,415 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:33:59,415 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:33:59,415 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 3 times [2022-04-08 12:33:59,415 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:33:59,415 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [39185041] [2022-04-08 12:33:59,416 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:33:59,416 INFO L85 PathProgramCache]: Analyzing trace with hash 1984914564, now seen corresponding path program 4 times [2022-04-08 12:33:59,416 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:33:59,416 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1502220542] [2022-04-08 12:33:59,416 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:33:59,416 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:33:59,427 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:33:59,427 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1057953550] [2022-04-08 12:33:59,427 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:33:59,428 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:33:59,428 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:33:59,429 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 12:33:59,431 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 12:33:59,471 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:33:59,472 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:33:59,472 INFO L263 TraceCheckSpWp]: Trace formula consists of 174 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-08 12:33:59,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:33:59,484 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:33:59,665 INFO L272 TraceCheckUtils]: 0: Hoare triple {13756#true} call ULTIMATE.init(); {13756#true} is VALID [2022-04-08 12:33:59,665 INFO L290 TraceCheckUtils]: 1: Hoare triple {13756#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(11, 2);call #Ultimate.allocInit(12, 3); {13756#true} is VALID [2022-04-08 12:33:59,665 INFO L290 TraceCheckUtils]: 2: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 12:33:59,665 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13756#true} {13756#true} #112#return; {13756#true} is VALID [2022-04-08 12:33:59,665 INFO L272 TraceCheckUtils]: 4: Hoare triple {13756#true} call #t~ret6 := main(); {13756#true} is VALID [2022-04-08 12:33:59,665 INFO L290 TraceCheckUtils]: 5: Hoare triple {13756#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {13756#true} is VALID [2022-04-08 12:33:59,665 INFO L272 TraceCheckUtils]: 6: Hoare triple {13756#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L290 TraceCheckUtils]: 7: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L290 TraceCheckUtils]: 8: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L290 TraceCheckUtils]: 9: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13756#true} {13756#true} #94#return; {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L290 TraceCheckUtils]: 11: Hoare triple {13756#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L272 TraceCheckUtils]: 12: Hoare triple {13756#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L290 TraceCheckUtils]: 13: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L290 TraceCheckUtils]: 14: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L290 TraceCheckUtils]: 15: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {13756#true} {13756#true} #96#return; {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L272 TraceCheckUtils]: 17: Hoare triple {13756#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L290 TraceCheckUtils]: 18: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L290 TraceCheckUtils]: 19: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 12:33:59,666 INFO L290 TraceCheckUtils]: 20: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {13756#true} {13756#true} #98#return; {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L272 TraceCheckUtils]: 22: Hoare triple {13756#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L290 TraceCheckUtils]: 23: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L290 TraceCheckUtils]: 24: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L290 TraceCheckUtils]: 25: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {13756#true} {13756#true} #100#return; {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L290 TraceCheckUtils]: 27: Hoare triple {13756#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L290 TraceCheckUtils]: 28: Hoare triple {13756#true} assume !false; {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L290 TraceCheckUtils]: 29: Hoare triple {13756#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L290 TraceCheckUtils]: 30: Hoare triple {13756#true} assume !false; {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L290 TraceCheckUtils]: 31: Hoare triple {13756#true} assume !(~c~0 >= ~b~0); {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L290 TraceCheckUtils]: 32: Hoare triple {13756#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L290 TraceCheckUtils]: 33: Hoare triple {13756#true} assume !false; {13756#true} is VALID [2022-04-08 12:33:59,667 INFO L290 TraceCheckUtils]: 34: Hoare triple {13756#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13756#true} is VALID [2022-04-08 12:33:59,668 INFO L290 TraceCheckUtils]: 35: Hoare triple {13756#true} assume !false; {13756#true} is VALID [2022-04-08 12:33:59,668 INFO L290 TraceCheckUtils]: 36: Hoare triple {13756#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 12:33:59,668 INFO L290 TraceCheckUtils]: 37: Hoare triple {13869#(<= main_~v~0 main_~b~0)} assume !false; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 12:33:59,668 INFO L272 TraceCheckUtils]: 38: Hoare triple {13869#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13756#true} is VALID [2022-04-08 12:33:59,668 INFO L290 TraceCheckUtils]: 39: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 12:33:59,668 INFO L290 TraceCheckUtils]: 40: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 12:33:59,668 INFO L290 TraceCheckUtils]: 41: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 12:33:59,669 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {13756#true} {13869#(<= main_~v~0 main_~b~0)} #102#return; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 12:33:59,669 INFO L272 TraceCheckUtils]: 43: Hoare triple {13869#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13756#true} is VALID [2022-04-08 12:33:59,669 INFO L290 TraceCheckUtils]: 44: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 12:33:59,669 INFO L290 TraceCheckUtils]: 45: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 12:33:59,669 INFO L290 TraceCheckUtils]: 46: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 12:33:59,670 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {13756#true} {13869#(<= main_~v~0 main_~b~0)} #104#return; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 12:33:59,670 INFO L272 TraceCheckUtils]: 48: Hoare triple {13869#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13756#true} is VALID [2022-04-08 12:33:59,670 INFO L290 TraceCheckUtils]: 49: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 12:33:59,670 INFO L290 TraceCheckUtils]: 50: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 12:33:59,670 INFO L290 TraceCheckUtils]: 51: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 12:33:59,671 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {13756#true} {13869#(<= main_~v~0 main_~b~0)} #106#return; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 12:33:59,671 INFO L272 TraceCheckUtils]: 53: Hoare triple {13869#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {13756#true} is VALID [2022-04-08 12:33:59,671 INFO L290 TraceCheckUtils]: 54: Hoare triple {13756#true} ~cond := #in~cond; {13756#true} is VALID [2022-04-08 12:33:59,671 INFO L290 TraceCheckUtils]: 55: Hoare triple {13756#true} assume !(0 == ~cond); {13756#true} is VALID [2022-04-08 12:33:59,671 INFO L290 TraceCheckUtils]: 56: Hoare triple {13756#true} assume true; {13756#true} is VALID [2022-04-08 12:33:59,672 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {13756#true} {13869#(<= main_~v~0 main_~b~0)} #108#return; {13869#(<= main_~v~0 main_~b~0)} is VALID [2022-04-08 12:33:59,672 INFO L290 TraceCheckUtils]: 58: Hoare triple {13869#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {13936#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-08 12:33:59,672 INFO L290 TraceCheckUtils]: 59: Hoare triple {13936#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {13940#(< main_~c~0 main_~b~0)} is VALID [2022-04-08 12:33:59,673 INFO L290 TraceCheckUtils]: 60: Hoare triple {13940#(< main_~c~0 main_~b~0)} assume !false; {13940#(< main_~c~0 main_~b~0)} is VALID [2022-04-08 12:33:59,673 INFO L290 TraceCheckUtils]: 61: Hoare triple {13940#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {13757#false} is VALID [2022-04-08 12:33:59,673 INFO L290 TraceCheckUtils]: 62: Hoare triple {13757#false} assume !false; {13757#false} is VALID [2022-04-08 12:33:59,673 INFO L272 TraceCheckUtils]: 63: Hoare triple {13757#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13757#false} is VALID [2022-04-08 12:33:59,673 INFO L290 TraceCheckUtils]: 64: Hoare triple {13757#false} ~cond := #in~cond; {13757#false} is VALID [2022-04-08 12:33:59,673 INFO L290 TraceCheckUtils]: 65: Hoare triple {13757#false} assume !(0 == ~cond); {13757#false} is VALID [2022-04-08 12:33:59,673 INFO L290 TraceCheckUtils]: 66: Hoare triple {13757#false} assume true; {13757#false} is VALID [2022-04-08 12:33:59,674 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {13757#false} {13757#false} #102#return; {13757#false} is VALID [2022-04-08 12:33:59,674 INFO L272 TraceCheckUtils]: 68: Hoare triple {13757#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13757#false} is VALID [2022-04-08 12:33:59,674 INFO L290 TraceCheckUtils]: 69: Hoare triple {13757#false} ~cond := #in~cond; {13757#false} is VALID [2022-04-08 12:33:59,674 INFO L290 TraceCheckUtils]: 70: Hoare triple {13757#false} assume !(0 == ~cond); {13757#false} is VALID [2022-04-08 12:33:59,674 INFO L290 TraceCheckUtils]: 71: Hoare triple {13757#false} assume true; {13757#false} is VALID [2022-04-08 12:33:59,674 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {13757#false} {13757#false} #104#return; {13757#false} is VALID [2022-04-08 12:33:59,674 INFO L272 TraceCheckUtils]: 73: Hoare triple {13757#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13757#false} is VALID [2022-04-08 12:33:59,674 INFO L290 TraceCheckUtils]: 74: Hoare triple {13757#false} ~cond := #in~cond; {13757#false} is VALID [2022-04-08 12:33:59,674 INFO L290 TraceCheckUtils]: 75: Hoare triple {13757#false} assume 0 == ~cond; {13757#false} is VALID [2022-04-08 12:33:59,674 INFO L290 TraceCheckUtils]: 76: Hoare triple {13757#false} assume !false; {13757#false} is VALID [2022-04-08 12:33:59,674 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 48 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-08 12:33:59,674 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 12:33:59,675 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:33:59,675 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1502220542] [2022-04-08 12:33:59,675 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:33:59,675 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1057953550] [2022-04-08 12:33:59,675 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1057953550] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:33:59,675 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:33:59,675 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:33:59,675 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:33:59,675 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [39185041] [2022-04-08 12:33:59,675 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [39185041] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:33:59,675 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:33:59,675 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 12:33:59,675 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1377450847] [2022-04-08 12:33:59,675 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:33:59,676 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), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 77 [2022-04-08 12:33:59,676 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:33:59,676 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), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-08 12:33:59,712 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:33:59,712 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 12:33:59,712 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:33:59,713 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 12:33:59,713 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 12:33:59,713 INFO L87 Difference]: Start difference. First operand 224 states and 308 transitions. Second operand has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-08 12:34:00,607 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:34:00,607 INFO L93 Difference]: Finished difference Result 367 states and 500 transitions. [2022-04-08 12:34:00,608 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 12:34:00,608 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), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 77 [2022-04-08 12:34:00,608 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:34:00,608 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), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-08 12:34:00,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-08 12:34:00,609 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), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-08 12:34:00,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2022-04-08 12:34:00,610 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 85 transitions. [2022-04-08 12:34:00,690 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 12:34:00,696 INFO L225 Difference]: With dead ends: 367 [2022-04-08 12:34:00,696 INFO L226 Difference]: Without dead ends: 230 [2022-04-08 12:34:00,697 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 74 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 12:34:00,698 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 3 mSDsluCounter, 94 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 57 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 12:34:00,698 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [3 Valid, 139 Invalid, 57 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 12:34:00,698 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 230 states. [2022-04-08 12:34:01,292 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 230 to 214. [2022-04-08 12:34:01,292 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:34:01,293 INFO L82 GeneralOperation]: Start isEquivalent. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-08 12:34:01,293 INFO L74 IsIncluded]: Start isIncluded. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-08 12:34:01,293 INFO L87 Difference]: Start difference. First operand 230 states. Second operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-08 12:34:01,299 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:34:01,299 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-08 12:34:01,300 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-08 12:34:01,300 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:34:01,300 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:34:01,301 INFO L74 IsIncluded]: Start isIncluded. First operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) Second operand 230 states. [2022-04-08 12:34:01,301 INFO L87 Difference]: Start difference. First operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) Second operand 230 states. [2022-04-08 12:34:01,307 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:34:01,307 INFO L93 Difference]: Finished difference Result 230 states and 305 transitions. [2022-04-08 12:34:01,307 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 305 transitions. [2022-04-08 12:34:01,308 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:34:01,308 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:34:01,308 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:34:01,308 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:34:01,308 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 214 states, 126 states have (on average 1.1825396825396826) internal successors, (149), 127 states have internal predecessors, (149), 71 states have call successors, (71), 17 states have call predecessors, (71), 16 states have return successors, (69), 69 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-08 12:34:01,314 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 214 states to 214 states and 289 transitions. [2022-04-08 12:34:01,315 INFO L78 Accepts]: Start accepts. Automaton has 214 states and 289 transitions. Word has length 77 [2022-04-08 12:34:01,315 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:34:01,315 INFO L478 AbstractCegarLoop]: Abstraction has 214 states and 289 transitions. [2022-04-08 12:34:01,315 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), 3 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-08 12:34:01,315 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 214 states and 289 transitions. [2022-04-08 12:34:01,911 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 289 edges. 289 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:34:01,912 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 289 transitions. [2022-04-08 12:34:01,912 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2022-04-08 12:34:01,912 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:34:01,913 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 4, 4, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:34:01,935 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 12:34:02,135 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 12:34:02,135 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:34:02,135 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:34:02,135 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 5 times [2022-04-08 12:34:02,135 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:34:02,135 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1458740589] [2022-04-08 12:34:02,136 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:34:02,136 INFO L85 PathProgramCache]: Analyzing trace with hash -867272991, now seen corresponding path program 6 times [2022-04-08 12:34:02,136 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:34:02,136 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1167364207] [2022-04-08 12:34:02,136 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:34:02,136 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:34:02,149 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:34:02,149 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [960491704] [2022-04-08 12:34:02,149 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 12:34:02,150 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:34:02,150 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:34:02,150 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 12:34:02,179 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 12:34:02,218 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 12:34:02,218 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:34:02,219 INFO L263 TraceCheckSpWp]: Trace formula consists of 196 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-08 12:34:02,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:34:02,233 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:34:03,364 INFO L272 TraceCheckUtils]: 0: Hoare triple {15616#true} call ULTIMATE.init(); {15616#true} is VALID [2022-04-08 12:34:03,364 INFO L290 TraceCheckUtils]: 1: Hoare triple {15616#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(11, 2);call #Ultimate.allocInit(12, 3); {15616#true} is VALID [2022-04-08 12:34:03,364 INFO L290 TraceCheckUtils]: 2: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:03,364 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15616#true} {15616#true} #112#return; {15616#true} is VALID [2022-04-08 12:34:03,364 INFO L272 TraceCheckUtils]: 4: Hoare triple {15616#true} call #t~ret6 := main(); {15616#true} is VALID [2022-04-08 12:34:03,364 INFO L290 TraceCheckUtils]: 5: Hoare triple {15616#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {15616#true} is VALID [2022-04-08 12:34:03,364 INFO L272 TraceCheckUtils]: 6: Hoare triple {15616#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L290 TraceCheckUtils]: 7: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L290 TraceCheckUtils]: 8: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L290 TraceCheckUtils]: 9: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15616#true} {15616#true} #94#return; {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L290 TraceCheckUtils]: 11: Hoare triple {15616#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L272 TraceCheckUtils]: 12: Hoare triple {15616#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L290 TraceCheckUtils]: 13: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L290 TraceCheckUtils]: 14: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L290 TraceCheckUtils]: 15: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15616#true} {15616#true} #96#return; {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L272 TraceCheckUtils]: 17: Hoare triple {15616#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L290 TraceCheckUtils]: 18: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:03,365 INFO L290 TraceCheckUtils]: 19: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:03,366 INFO L290 TraceCheckUtils]: 20: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:03,366 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15616#true} {15616#true} #98#return; {15616#true} is VALID [2022-04-08 12:34:03,366 INFO L272 TraceCheckUtils]: 22: Hoare triple {15616#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:03,366 INFO L290 TraceCheckUtils]: 23: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:03,366 INFO L290 TraceCheckUtils]: 24: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:03,366 INFO L290 TraceCheckUtils]: 25: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:03,366 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15616#true} {15616#true} #100#return; {15616#true} is VALID [2022-04-08 12:34:03,366 INFO L290 TraceCheckUtils]: 27: Hoare triple {15616#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {15702#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 12:34:03,367 INFO L290 TraceCheckUtils]: 28: Hoare triple {15702#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {15702#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 12:34:03,367 INFO L290 TraceCheckUtils]: 29: Hoare triple {15702#(and (= main_~r~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:34:03,371 INFO L290 TraceCheckUtils]: 30: Hoare triple {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:34:03,372 INFO L290 TraceCheckUtils]: 31: Hoare triple {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:34:03,373 INFO L290 TraceCheckUtils]: 32: Hoare triple {15709#(and (= main_~r~0 0) (= main_~k~0 0) (<= 1 main_~p~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15719#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:34:03,373 INFO L290 TraceCheckUtils]: 33: Hoare triple {15719#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {15719#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:34:03,374 INFO L290 TraceCheckUtils]: 34: Hoare triple {15719#(and (= main_~s~0 0) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15726#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:34:03,374 INFO L290 TraceCheckUtils]: 35: Hoare triple {15726#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} assume !false; {15726#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:34:03,375 INFO L290 TraceCheckUtils]: 36: Hoare triple {15726#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:34:03,376 INFO L290 TraceCheckUtils]: 37: Hoare triple {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:34:03,376 INFO L272 TraceCheckUtils]: 38: Hoare triple {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:03,376 INFO L290 TraceCheckUtils]: 39: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:03,376 INFO L290 TraceCheckUtils]: 40: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:03,376 INFO L290 TraceCheckUtils]: 41: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:03,377 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15616#true} {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:34:03,377 INFO L272 TraceCheckUtils]: 43: Hoare triple {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:03,378 INFO L290 TraceCheckUtils]: 44: Hoare triple {15616#true} ~cond := #in~cond; {15758#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:34:03,378 INFO L290 TraceCheckUtils]: 45: Hoare triple {15758#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:34:03,379 INFO L290 TraceCheckUtils]: 46: Hoare triple {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:34:03,380 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} {15733#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:34:03,380 INFO L272 TraceCheckUtils]: 48: Hoare triple {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:03,380 INFO L290 TraceCheckUtils]: 49: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:03,380 INFO L290 TraceCheckUtils]: 50: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:03,380 INFO L290 TraceCheckUtils]: 51: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:03,381 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15616#true} {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #106#return; {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:34:03,382 INFO L272 TraceCheckUtils]: 53: Hoare triple {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:03,382 INFO L290 TraceCheckUtils]: 54: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:03,382 INFO L290 TraceCheckUtils]: 55: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:03,382 INFO L290 TraceCheckUtils]: 56: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:03,383 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {15616#true} {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #108#return; {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:34:03,384 INFO L290 TraceCheckUtils]: 58: Hoare triple {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !(~c~0 >= 2 * ~v~0); {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:34:03,384 INFO L290 TraceCheckUtils]: 59: Hoare triple {15769#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (<= 1 main_~q~0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 12:34:03,385 INFO L290 TraceCheckUtils]: 60: Hoare triple {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !false; {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 12:34:03,386 INFO L290 TraceCheckUtils]: 61: Hoare triple {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-08 12:34:03,387 INFO L290 TraceCheckUtils]: 62: Hoare triple {15806#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= 1 main_~q~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15816#(and (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 12:34:03,388 INFO L290 TraceCheckUtils]: 63: Hoare triple {15816#(and (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~a~0 main_~x~0))} assume !false; {15816#(and (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 12:34:03,389 INFO L290 TraceCheckUtils]: 64: Hoare triple {15816#(and (= main_~s~0 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 1) 0) (= main_~a~0 (* main_~x~0 (* (- 1) main_~q~0))) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} is VALID [2022-04-08 12:34:03,389 INFO L290 TraceCheckUtils]: 65: Hoare triple {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} assume !false; {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} is VALID [2022-04-08 12:34:03,390 INFO L290 TraceCheckUtils]: 66: Hoare triple {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} is VALID [2022-04-08 12:34:03,391 INFO L290 TraceCheckUtils]: 67: Hoare triple {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} assume !false; {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} is VALID [2022-04-08 12:34:03,391 INFO L272 TraceCheckUtils]: 68: Hoare triple {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:03,391 INFO L290 TraceCheckUtils]: 69: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:03,391 INFO L290 TraceCheckUtils]: 70: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:03,391 INFO L290 TraceCheckUtils]: 71: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:03,392 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {15616#true} {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} #102#return; {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} is VALID [2022-04-08 12:34:03,393 INFO L272 TraceCheckUtils]: 73: Hoare triple {15823#(and (= main_~s~0 1) (= main_~x~0 (* main_~x~0 (* (- 1) main_~q~0))) (<= (+ main_~q~0 1) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15851#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:34:03,393 INFO L290 TraceCheckUtils]: 74: Hoare triple {15851#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15855#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:34:03,394 INFO L290 TraceCheckUtils]: 75: Hoare triple {15855#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15617#false} is VALID [2022-04-08 12:34:03,394 INFO L290 TraceCheckUtils]: 76: Hoare triple {15617#false} assume !false; {15617#false} is VALID [2022-04-08 12:34:03,394 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 12 proven. 32 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-08 12:34:03,395 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:34:31,164 INFO L290 TraceCheckUtils]: 76: Hoare triple {15617#false} assume !false; {15617#false} is VALID [2022-04-08 12:34:31,164 INFO L290 TraceCheckUtils]: 75: Hoare triple {15855#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15617#false} is VALID [2022-04-08 12:34:31,165 INFO L290 TraceCheckUtils]: 74: Hoare triple {15851#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15855#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:34:31,165 INFO L272 TraceCheckUtils]: 73: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15851#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:34:31,166 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {15616#true} {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:34:31,166 INFO L290 TraceCheckUtils]: 71: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:31,166 INFO L290 TraceCheckUtils]: 70: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:31,166 INFO L290 TraceCheckUtils]: 69: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:31,166 INFO L272 TraceCheckUtils]: 68: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:31,167 INFO L290 TraceCheckUtils]: 67: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:34:31,168 INFO L290 TraceCheckUtils]: 66: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:34:31,168 INFO L290 TraceCheckUtils]: 65: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:34:31,168 INFO L290 TraceCheckUtils]: 64: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:34:31,169 INFO L290 TraceCheckUtils]: 63: Hoare triple {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:34:33,170 WARN L290 TraceCheckUtils]: 62: Hoare triple {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15871#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-08 12:34:33,171 INFO L290 TraceCheckUtils]: 61: Hoare triple {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 12:34:33,171 INFO L290 TraceCheckUtils]: 60: Hoare triple {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !false; {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 12:34:33,950 INFO L290 TraceCheckUtils]: 59: Hoare triple {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {15905#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 12:34:33,951 INFO L290 TraceCheckUtils]: 58: Hoare triple {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:34:33,951 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {15616#true} {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #108#return; {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:34:33,951 INFO L290 TraceCheckUtils]: 56: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:33,952 INFO L290 TraceCheckUtils]: 55: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:33,952 INFO L290 TraceCheckUtils]: 54: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:33,952 INFO L272 TraceCheckUtils]: 53: Hoare triple {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:33,952 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {15616#true} {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #106#return; {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:34:33,953 INFO L290 TraceCheckUtils]: 51: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:33,953 INFO L290 TraceCheckUtils]: 50: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:33,953 INFO L290 TraceCheckUtils]: 49: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:33,953 INFO L272 TraceCheckUtils]: 48: Hoare triple {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:33,954 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {15915#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:34:33,954 INFO L290 TraceCheckUtils]: 46: Hoare triple {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:34:33,954 INFO L290 TraceCheckUtils]: 45: Hoare triple {15962#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {15762#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:34:33,955 INFO L290 TraceCheckUtils]: 44: Hoare triple {15616#true} ~cond := #in~cond; {15962#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:34:33,955 INFO L272 TraceCheckUtils]: 43: Hoare triple {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:33,955 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {15616#true} {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:34:33,956 INFO L290 TraceCheckUtils]: 41: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:33,956 INFO L290 TraceCheckUtils]: 40: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:33,956 INFO L290 TraceCheckUtils]: 39: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:33,956 INFO L272 TraceCheckUtils]: 38: Hoare triple {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:33,956 INFO L290 TraceCheckUtils]: 37: Hoare triple {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:34:33,957 INFO L290 TraceCheckUtils]: 36: Hoare triple {15987#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {15952#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:34:33,957 INFO L290 TraceCheckUtils]: 35: Hoare triple {15987#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {15987#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:34:33,958 INFO L290 TraceCheckUtils]: 34: Hoare triple {15994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {15987#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:34:33,958 INFO L290 TraceCheckUtils]: 33: Hoare triple {15994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {15994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:34:34,049 INFO L290 TraceCheckUtils]: 32: Hoare triple {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:34:34,050 INFO L290 TraceCheckUtils]: 31: Hoare triple {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:34:34,050 INFO L290 TraceCheckUtils]: 30: Hoare triple {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:34:34,051 INFO L290 TraceCheckUtils]: 29: Hoare triple {16011#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (- 1) main_~a~0) (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16001#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:34:34,051 INFO L290 TraceCheckUtils]: 28: Hoare triple {16011#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (- 1) main_~a~0) (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0)))} assume !false; {16011#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (- 1) main_~a~0) (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0)))} is VALID [2022-04-08 12:34:34,052 INFO L290 TraceCheckUtils]: 27: Hoare triple {15616#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16011#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* (- 1) main_~a~0) (* main_~y~0 main_~r~0 1) (* main_~p~0 main_~x~0 1) main_~b~0)))} is VALID [2022-04-08 12:34:34,052 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15616#true} {15616#true} #100#return; {15616#true} is VALID [2022-04-08 12:34:34,052 INFO L290 TraceCheckUtils]: 25: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:34,052 INFO L290 TraceCheckUtils]: 24: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:34,052 INFO L290 TraceCheckUtils]: 23: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:34,052 INFO L272 TraceCheckUtils]: 22: Hoare triple {15616#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:34,052 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15616#true} {15616#true} #98#return; {15616#true} is VALID [2022-04-08 12:34:34,052 INFO L290 TraceCheckUtils]: 20: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:34,052 INFO L290 TraceCheckUtils]: 19: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:34,052 INFO L290 TraceCheckUtils]: 18: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:34,052 INFO L272 TraceCheckUtils]: 17: Hoare triple {15616#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15616#true} {15616#true} #96#return; {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L290 TraceCheckUtils]: 15: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L290 TraceCheckUtils]: 14: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L290 TraceCheckUtils]: 13: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L272 TraceCheckUtils]: 12: Hoare triple {15616#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L290 TraceCheckUtils]: 11: Hoare triple {15616#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15616#true} {15616#true} #94#return; {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L290 TraceCheckUtils]: 9: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L290 TraceCheckUtils]: 8: Hoare triple {15616#true} assume !(0 == ~cond); {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L290 TraceCheckUtils]: 7: Hoare triple {15616#true} ~cond := #in~cond; {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L272 TraceCheckUtils]: 6: Hoare triple {15616#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L290 TraceCheckUtils]: 5: Hoare triple {15616#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L272 TraceCheckUtils]: 4: Hoare triple {15616#true} call #t~ret6 := main(); {15616#true} is VALID [2022-04-08 12:34:34,053 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15616#true} {15616#true} #112#return; {15616#true} is VALID [2022-04-08 12:34:34,054 INFO L290 TraceCheckUtils]: 2: Hoare triple {15616#true} assume true; {15616#true} is VALID [2022-04-08 12:34:34,054 INFO L290 TraceCheckUtils]: 1: Hoare triple {15616#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(11, 2);call #Ultimate.allocInit(12, 3); {15616#true} is VALID [2022-04-08 12:34:34,054 INFO L272 TraceCheckUtils]: 0: Hoare triple {15616#true} call ULTIMATE.init(); {15616#true} is VALID [2022-04-08 12:34:34,054 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 18 proven. 26 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-08 12:34:34,054 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:34:34,054 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1167364207] [2022-04-08 12:34:34,055 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:34:34,055 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [960491704] [2022-04-08 12:34:34,055 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [960491704] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:34:34,055 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:34:34,055 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14] total 24 [2022-04-08 12:34:34,055 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:34:34,055 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1458740589] [2022-04-08 12:34:34,056 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1458740589] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:34:34,056 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:34:34,056 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-08 12:34:34,056 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1691676825] [2022-04-08 12:34:34,056 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:34:34,056 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 77 [2022-04-08 12:34:34,057 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:34:34,057 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 12:34:34,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:34:34,109 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-08 12:34:34,109 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:34:34,110 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-08 12:34:34,110 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=87, Invalid=465, Unknown=0, NotChecked=0, Total=552 [2022-04-08 12:34:34,110 INFO L87 Difference]: Start difference. First operand 214 states and 289 transitions. Second operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 12:34:37,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:34:37,048 INFO L93 Difference]: Finished difference Result 285 states and 377 transitions. [2022-04-08 12:34:37,048 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-08 12:34:37,049 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 77 [2022-04-08 12:34:37,049 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:34:37,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 12:34:37,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-08 12:34:37,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 12:34:37,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 148 transitions. [2022-04-08 12:34:37,053 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 148 transitions. [2022-04-08 12:34:37,219 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 148 edges. 148 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:34:37,226 INFO L225 Difference]: With dead ends: 285 [2022-04-08 12:34:37,226 INFO L226 Difference]: Without dead ends: 283 [2022-04-08 12:34:37,227 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 130 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 117 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=150, Invalid=780, Unknown=0, NotChecked=0, Total=930 [2022-04-08 12:34:37,227 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 60 mSDsluCounter, 304 mSDsCounter, 0 mSdLazyCounter, 747 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 354 SdHoareTripleChecker+Invalid, 796 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 747 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-08 12:34:37,227 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 354 Invalid, 796 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 747 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-08 12:34:37,228 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 283 states. [2022-04-08 12:34:38,071 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 283 to 265. [2022-04-08 12:34:38,071 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:34:38,072 INFO L82 GeneralOperation]: Start isEquivalent. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-08 12:34:38,072 INFO L74 IsIncluded]: Start isIncluded. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-08 12:34:38,072 INFO L87 Difference]: Start difference. First operand 283 states. Second operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-08 12:34:38,080 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:34:38,080 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-08 12:34:38,080 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-08 12:34:38,081 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:34:38,081 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:34:38,082 INFO L74 IsIncluded]: Start isIncluded. First operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) Second operand 283 states. [2022-04-08 12:34:38,082 INFO L87 Difference]: Start difference. First operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) Second operand 283 states. [2022-04-08 12:34:38,089 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:34:38,089 INFO L93 Difference]: Finished difference Result 283 states and 375 transitions. [2022-04-08 12:34:38,089 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 375 transitions. [2022-04-08 12:34:38,090 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:34:38,090 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:34:38,090 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:34:38,091 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:34:38,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 265 states, 157 states have (on average 1.178343949044586) internal successors, (185), 158 states have internal predecessors, (185), 87 states have call successors, (87), 21 states have call predecessors, (87), 20 states have return successors, (85), 85 states have call predecessors, (85), 85 states have call successors, (85) [2022-04-08 12:34:38,098 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 265 states to 265 states and 357 transitions. [2022-04-08 12:34:38,099 INFO L78 Accepts]: Start accepts. Automaton has 265 states and 357 transitions. Word has length 77 [2022-04-08 12:34:38,099 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:34:38,099 INFO L478 AbstractCegarLoop]: Abstraction has 265 states and 357 transitions. [2022-04-08 12:34:38,099 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.466666666666667) internal successors, (37), 14 states have internal predecessors, (37), 4 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-08 12:34:38,099 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 265 states and 357 transitions. [2022-04-08 12:34:38,788 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 357 edges. 357 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:34:38,788 INFO L276 IsEmpty]: Start isEmpty. Operand 265 states and 357 transitions. [2022-04-08 12:34:38,789 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-08 12:34:38,789 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:34:38,789 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 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, 1, 1, 1] [2022-04-08 12:34:38,806 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-08 12:34:38,991 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 12:34:38,992 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:34:38,992 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:34:38,992 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 1 times [2022-04-08 12:34:38,992 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:34:38,992 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1410303077] [2022-04-08 12:34:38,993 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:34:38,993 INFO L85 PathProgramCache]: Analyzing trace with hash -1679616651, now seen corresponding path program 2 times [2022-04-08 12:34:38,993 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:34:38,993 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [386810015] [2022-04-08 12:34:38,993 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:34:38,993 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:34:39,004 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:34:39,004 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1808565209] [2022-04-08 12:34:39,004 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:34:39,004 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:34:39,005 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:34:39,005 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 12:34:39,006 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 12:34:39,054 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:34:39,054 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:34:39,055 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 61 conjunts are in the unsatisfiable core [2022-04-08 12:34:39,069 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:34:39,070 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:34:39,898 INFO L272 TraceCheckUtils]: 0: Hoare triple {17781#true} call ULTIMATE.init(); {17781#true} is VALID [2022-04-08 12:34:39,899 INFO L290 TraceCheckUtils]: 1: Hoare triple {17781#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(11, 2);call #Ultimate.allocInit(12, 3); {17781#true} is VALID [2022-04-08 12:34:39,899 INFO L290 TraceCheckUtils]: 2: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:34:39,899 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17781#true} {17781#true} #112#return; {17781#true} is VALID [2022-04-08 12:34:39,899 INFO L272 TraceCheckUtils]: 4: Hoare triple {17781#true} call #t~ret6 := main(); {17781#true} is VALID [2022-04-08 12:34:39,899 INFO L290 TraceCheckUtils]: 5: Hoare triple {17781#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {17781#true} is VALID [2022-04-08 12:34:39,899 INFO L272 TraceCheckUtils]: 6: Hoare triple {17781#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,899 INFO L290 TraceCheckUtils]: 7: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:34:39,899 INFO L290 TraceCheckUtils]: 8: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:34:39,899 INFO L290 TraceCheckUtils]: 9: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:34:39,899 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17781#true} {17781#true} #94#return; {17781#true} is VALID [2022-04-08 12:34:39,900 INFO L290 TraceCheckUtils]: 11: Hoare triple {17781#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17781#true} is VALID [2022-04-08 12:34:39,900 INFO L272 TraceCheckUtils]: 12: Hoare triple {17781#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,900 INFO L290 TraceCheckUtils]: 13: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:34:39,900 INFO L290 TraceCheckUtils]: 14: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:34:39,900 INFO L290 TraceCheckUtils]: 15: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:34:39,900 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17781#true} {17781#true} #96#return; {17781#true} is VALID [2022-04-08 12:34:39,900 INFO L272 TraceCheckUtils]: 17: Hoare triple {17781#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,900 INFO L290 TraceCheckUtils]: 18: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:34:39,900 INFO L290 TraceCheckUtils]: 19: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:34:39,900 INFO L290 TraceCheckUtils]: 20: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:34:39,901 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17781#true} {17781#true} #98#return; {17781#true} is VALID [2022-04-08 12:34:39,901 INFO L272 TraceCheckUtils]: 22: Hoare triple {17781#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,901 INFO L290 TraceCheckUtils]: 23: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:34:39,901 INFO L290 TraceCheckUtils]: 24: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:34:39,901 INFO L290 TraceCheckUtils]: 25: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:34:39,901 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17781#true} {17781#true} #100#return; {17781#true} is VALID [2022-04-08 12:34:39,902 INFO L290 TraceCheckUtils]: 27: Hoare triple {17781#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17867#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,902 INFO L290 TraceCheckUtils]: 28: Hoare triple {17867#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {17867#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,902 INFO L290 TraceCheckUtils]: 29: Hoare triple {17867#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17874#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,903 INFO L290 TraceCheckUtils]: 30: Hoare triple {17874#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {17874#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,903 INFO L290 TraceCheckUtils]: 31: Hoare triple {17874#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,904 INFO L290 TraceCheckUtils]: 32: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,904 INFO L272 TraceCheckUtils]: 33: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,904 INFO L290 TraceCheckUtils]: 34: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:34:39,904 INFO L290 TraceCheckUtils]: 35: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:34:39,904 INFO L290 TraceCheckUtils]: 36: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:34:39,905 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17781#true} {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,905 INFO L272 TraceCheckUtils]: 38: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,906 INFO L290 TraceCheckUtils]: 39: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:34:39,906 INFO L290 TraceCheckUtils]: 40: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:34:39,906 INFO L290 TraceCheckUtils]: 41: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:34:39,907 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17781#true} {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,907 INFO L272 TraceCheckUtils]: 43: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,907 INFO L290 TraceCheckUtils]: 44: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:34:39,907 INFO L290 TraceCheckUtils]: 45: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:34:39,907 INFO L290 TraceCheckUtils]: 46: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:34:39,908 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17781#true} {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,908 INFO L272 TraceCheckUtils]: 48: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,908 INFO L290 TraceCheckUtils]: 49: Hoare triple {17781#true} ~cond := #in~cond; {17936#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:34:39,909 INFO L290 TraceCheckUtils]: 50: Hoare triple {17936#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:34:39,909 INFO L290 TraceCheckUtils]: 51: Hoare triple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:34:39,910 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,911 INFO L290 TraceCheckUtils]: 53: Hoare triple {17881#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,911 INFO L290 TraceCheckUtils]: 54: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,911 INFO L272 TraceCheckUtils]: 55: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,911 INFO L290 TraceCheckUtils]: 56: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:34:39,911 INFO L290 TraceCheckUtils]: 57: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:34:39,912 INFO L290 TraceCheckUtils]: 58: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:34:39,912 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17781#true} {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,913 INFO L272 TraceCheckUtils]: 60: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,913 INFO L290 TraceCheckUtils]: 61: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:34:39,913 INFO L290 TraceCheckUtils]: 62: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:34:39,913 INFO L290 TraceCheckUtils]: 63: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:34:39,914 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {17781#true} {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,914 INFO L272 TraceCheckUtils]: 65: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,914 INFO L290 TraceCheckUtils]: 66: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:34:39,914 INFO L290 TraceCheckUtils]: 67: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:34:39,914 INFO L290 TraceCheckUtils]: 68: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:34:39,915 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {17781#true} {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,915 INFO L272 TraceCheckUtils]: 70: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:34:39,915 INFO L290 TraceCheckUtils]: 71: Hoare triple {17781#true} ~cond := #in~cond; {17936#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:34:39,916 INFO L290 TraceCheckUtils]: 72: Hoare triple {17936#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:34:39,916 INFO L290 TraceCheckUtils]: 73: Hoare triple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:34:39,917 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,918 INFO L290 TraceCheckUtils]: 75: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,919 INFO L290 TraceCheckUtils]: 76: Hoare triple {17950#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,919 INFO L290 TraceCheckUtils]: 77: Hoare triple {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !false; {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,920 INFO L290 TraceCheckUtils]: 78: Hoare triple {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-08 12:34:39,920 INFO L290 TraceCheckUtils]: 79: Hoare triple {18020#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~x~0)) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18030#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-08 12:34:39,921 INFO L290 TraceCheckUtils]: 80: Hoare triple {18030#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !false; {18030#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-08 12:34:39,922 INFO L290 TraceCheckUtils]: 81: Hoare triple {18030#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~y~0))) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {18037#(and (= main_~p~0 0) (= (+ main_~x~0 (* (- 2) main_~y~0)) 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-08 12:34:39,923 INFO L272 TraceCheckUtils]: 82: Hoare triple {18037#(and (= main_~p~0 0) (= (+ main_~x~0 (* (- 2) main_~y~0)) 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ (* main_~p~0 2) main_~q~0) 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18041#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:34:39,923 INFO L290 TraceCheckUtils]: 83: Hoare triple {18041#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18045#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:34:39,923 INFO L290 TraceCheckUtils]: 84: Hoare triple {18045#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17782#false} is VALID [2022-04-08 12:34:39,923 INFO L290 TraceCheckUtils]: 85: Hoare triple {17782#false} assume !false; {17782#false} is VALID [2022-04-08 12:34:39,924 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 41 proven. 21 refuted. 0 times theorem prover too weak. 100 trivial. 0 not checked. [2022-04-08 12:34:39,924 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:35:02,712 INFO L290 TraceCheckUtils]: 85: Hoare triple {17782#false} assume !false; {17782#false} is VALID [2022-04-08 12:35:02,712 INFO L290 TraceCheckUtils]: 84: Hoare triple {18045#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17782#false} is VALID [2022-04-08 12:35:02,713 INFO L290 TraceCheckUtils]: 83: Hoare triple {18041#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18045#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:35:02,713 INFO L272 TraceCheckUtils]: 82: Hoare triple {18061#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18041#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:35:02,714 INFO L290 TraceCheckUtils]: 81: Hoare triple {18065#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {18061#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:35:02,714 INFO L290 TraceCheckUtils]: 80: Hoare triple {18065#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {18065#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 12:35:03,565 INFO L290 TraceCheckUtils]: 79: Hoare triple {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18065#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 12:35:03,566 INFO L290 TraceCheckUtils]: 78: Hoare triple {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,566 INFO L290 TraceCheckUtils]: 77: Hoare triple {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,723 INFO L290 TraceCheckUtils]: 76: Hoare triple {18082#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18072#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,723 INFO L290 TraceCheckUtils]: 75: Hoare triple {18082#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {18082#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,724 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {18082#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,725 INFO L290 TraceCheckUtils]: 73: Hoare triple {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:03,725 INFO L290 TraceCheckUtils]: 72: Hoare triple {18099#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {17940#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:03,725 INFO L290 TraceCheckUtils]: 71: Hoare triple {17781#true} ~cond := #in~cond; {18099#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:35:03,725 INFO L272 TraceCheckUtils]: 70: Hoare triple {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,726 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {17781#true} {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,726 INFO L290 TraceCheckUtils]: 68: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,726 INFO L290 TraceCheckUtils]: 67: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:35:03,726 INFO L290 TraceCheckUtils]: 66: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:35:03,726 INFO L272 TraceCheckUtils]: 65: Hoare triple {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,727 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {17781#true} {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,727 INFO L290 TraceCheckUtils]: 63: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,727 INFO L290 TraceCheckUtils]: 62: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:35:03,727 INFO L290 TraceCheckUtils]: 61: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:35:03,728 INFO L272 TraceCheckUtils]: 60: Hoare triple {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,728 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {17781#true} {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,728 INFO L290 TraceCheckUtils]: 58: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,728 INFO L290 TraceCheckUtils]: 57: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:35:03,729 INFO L290 TraceCheckUtils]: 56: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:35:03,729 INFO L272 TraceCheckUtils]: 55: Hoare triple {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,729 INFO L290 TraceCheckUtils]: 54: Hoare triple {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,763 INFO L290 TraceCheckUtils]: 53: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {18089#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,764 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {17781#true} {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #108#return; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 12:35:03,764 INFO L290 TraceCheckUtils]: 51: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,764 INFO L290 TraceCheckUtils]: 50: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:35:03,764 INFO L290 TraceCheckUtils]: 49: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:35:03,764 INFO L272 TraceCheckUtils]: 48: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,765 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {17781#true} {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #106#return; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 12:35:03,765 INFO L290 TraceCheckUtils]: 46: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,765 INFO L290 TraceCheckUtils]: 45: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:35:03,765 INFO L290 TraceCheckUtils]: 44: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:35:03,765 INFO L272 TraceCheckUtils]: 43: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,767 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {17781#true} {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #104#return; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 12:35:03,767 INFO L290 TraceCheckUtils]: 41: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,767 INFO L290 TraceCheckUtils]: 40: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:35:03,767 INFO L290 TraceCheckUtils]: 39: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:35:03,768 INFO L272 TraceCheckUtils]: 38: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,780 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17781#true} {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #102#return; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 12:35:03,780 INFO L290 TraceCheckUtils]: 36: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,780 INFO L290 TraceCheckUtils]: 35: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:35:03,780 INFO L290 TraceCheckUtils]: 34: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:35:03,780 INFO L272 TraceCheckUtils]: 33: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,781 INFO L290 TraceCheckUtils]: 32: Hoare triple {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !false; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 12:35:03,782 INFO L290 TraceCheckUtils]: 31: Hoare triple {18221#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {18154#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-08 12:35:03,782 INFO L290 TraceCheckUtils]: 30: Hoare triple {18221#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !false; {18221#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-08 12:35:03,783 INFO L290 TraceCheckUtils]: 29: Hoare triple {18228#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {18221#(or (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-08 12:35:03,784 INFO L290 TraceCheckUtils]: 28: Hoare triple {18228#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18228#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,784 INFO L290 TraceCheckUtils]: 27: Hoare triple {17781#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18228#(or (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:35:03,784 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17781#true} {17781#true} #100#return; {17781#true} is VALID [2022-04-08 12:35:03,785 INFO L290 TraceCheckUtils]: 25: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,785 INFO L290 TraceCheckUtils]: 24: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:35:03,785 INFO L290 TraceCheckUtils]: 23: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:35:03,785 INFO L272 TraceCheckUtils]: 22: Hoare triple {17781#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,785 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17781#true} {17781#true} #98#return; {17781#true} is VALID [2022-04-08 12:35:03,785 INFO L290 TraceCheckUtils]: 20: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,785 INFO L290 TraceCheckUtils]: 19: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:35:03,785 INFO L290 TraceCheckUtils]: 18: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:35:03,785 INFO L272 TraceCheckUtils]: 17: Hoare triple {17781#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,785 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17781#true} {17781#true} #96#return; {17781#true} is VALID [2022-04-08 12:35:03,785 INFO L290 TraceCheckUtils]: 15: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,786 INFO L290 TraceCheckUtils]: 14: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:35:03,786 INFO L290 TraceCheckUtils]: 13: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:35:03,786 INFO L272 TraceCheckUtils]: 12: Hoare triple {17781#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,786 INFO L290 TraceCheckUtils]: 11: Hoare triple {17781#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17781#true} is VALID [2022-04-08 12:35:03,786 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17781#true} {17781#true} #94#return; {17781#true} is VALID [2022-04-08 12:35:03,786 INFO L290 TraceCheckUtils]: 9: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,786 INFO L290 TraceCheckUtils]: 8: Hoare triple {17781#true} assume !(0 == ~cond); {17781#true} is VALID [2022-04-08 12:35:03,786 INFO L290 TraceCheckUtils]: 7: Hoare triple {17781#true} ~cond := #in~cond; {17781#true} is VALID [2022-04-08 12:35:03,786 INFO L272 TraceCheckUtils]: 6: Hoare triple {17781#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {17781#true} is VALID [2022-04-08 12:35:03,786 INFO L290 TraceCheckUtils]: 5: Hoare triple {17781#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {17781#true} is VALID [2022-04-08 12:35:03,787 INFO L272 TraceCheckUtils]: 4: Hoare triple {17781#true} call #t~ret6 := main(); {17781#true} is VALID [2022-04-08 12:35:03,787 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17781#true} {17781#true} #112#return; {17781#true} is VALID [2022-04-08 12:35:03,787 INFO L290 TraceCheckUtils]: 2: Hoare triple {17781#true} assume true; {17781#true} is VALID [2022-04-08 12:35:03,787 INFO L290 TraceCheckUtils]: 1: Hoare triple {17781#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(11, 2);call #Ultimate.allocInit(12, 3); {17781#true} is VALID [2022-04-08 12:35:03,787 INFO L272 TraceCheckUtils]: 0: Hoare triple {17781#true} call ULTIMATE.init(); {17781#true} is VALID [2022-04-08 12:35:03,787 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 36 proven. 11 refuted. 0 times theorem prover too weak. 115 trivial. 0 not checked. [2022-04-08 12:35:03,788 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:35:03,788 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [386810015] [2022-04-08 12:35:03,788 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:35:03,788 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1808565209] [2022-04-08 12:35:03,788 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1808565209] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:35:03,788 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:35:03,788 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-08 12:35:03,788 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:35:03,788 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1410303077] [2022-04-08 12:35:03,789 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1410303077] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:35:03,789 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:35:03,789 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 12:35:03,789 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [969024301] [2022-04-08 12:35:03,789 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:35:03,789 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) Word has length 86 [2022-04-08 12:35:03,790 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:35:03,790 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 12:35:03,851 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:03,852 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 12:35:03,852 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:03,852 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 12:35:03,852 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=389, Unknown=0, NotChecked=0, Total=462 [2022-04-08 12:35:03,853 INFO L87 Difference]: Start difference. First operand 265 states and 357 transitions. Second operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 12:35:07,287 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:07,288 INFO L93 Difference]: Finished difference Result 348 states and 475 transitions. [2022-04-08 12:35:07,288 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 12:35:07,288 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) Word has length 86 [2022-04-08 12:35:07,288 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:35:07,288 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 12:35:07,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-08 12:35:07,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 12:35:07,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 143 transitions. [2022-04-08 12:35:07,292 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 143 transitions. [2022-04-08 12:35:07,491 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 12:35:07,500 INFO L225 Difference]: With dead ends: 348 [2022-04-08 12:35:07,500 INFO L226 Difference]: Without dead ends: 345 [2022-04-08 12:35:07,500 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 148 SyntacticMatches, 3 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 121 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=139, Invalid=673, Unknown=0, NotChecked=0, Total=812 [2022-04-08 12:35:07,501 INFO L913 BasicCegarLoop]: 52 mSDtfsCounter, 55 mSDsluCounter, 276 mSDsCounter, 0 mSdLazyCounter, 731 mSolverCounterSat, 59 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 328 SdHoareTripleChecker+Invalid, 790 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 59 IncrementalHoareTripleChecker+Valid, 731 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-08 12:35:07,501 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 328 Invalid, 790 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [59 Valid, 731 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-08 12:35:07,502 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 345 states. [2022-04-08 12:35:08,461 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 345 to 330. [2022-04-08 12:35:08,461 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:35:08,461 INFO L82 GeneralOperation]: Start isEquivalent. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-08 12:35:08,462 INFO L74 IsIncluded]: Start isIncluded. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-08 12:35:08,462 INFO L87 Difference]: Start difference. First operand 345 states. Second operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-08 12:35:08,472 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:08,472 INFO L93 Difference]: Finished difference Result 345 states and 471 transitions. [2022-04-08 12:35:08,472 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 471 transitions. [2022-04-08 12:35:08,473 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:08,473 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:08,474 INFO L74 IsIncluded]: Start isIncluded. First operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) Second operand 345 states. [2022-04-08 12:35:08,475 INFO L87 Difference]: Start difference. First operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) Second operand 345 states. [2022-04-08 12:35:08,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:35:08,491 INFO L93 Difference]: Finished difference Result 345 states and 471 transitions. [2022-04-08 12:35:08,491 INFO L276 IsEmpty]: Start isEmpty. Operand 345 states and 471 transitions. [2022-04-08 12:35:08,492 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:35:08,492 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:35:08,492 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:35:08,492 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:35:08,493 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 330 states, 191 states have (on average 1.193717277486911) internal successors, (228), 192 states have internal predecessors, (228), 115 states have call successors, (115), 24 states have call predecessors, (115), 23 states have return successors, (113), 113 states have call predecessors, (113), 113 states have call successors, (113) [2022-04-08 12:35:08,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 330 states to 330 states and 456 transitions. [2022-04-08 12:35:08,504 INFO L78 Accepts]: Start accepts. Automaton has 330 states and 456 transitions. Word has length 86 [2022-04-08 12:35:08,504 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:35:08,504 INFO L478 AbstractCegarLoop]: Abstraction has 330 states and 456 transitions. [2022-04-08 12:35:08,504 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.5833333333333335) internal successors, (31), 12 states have internal predecessors, (31), 4 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 3 states have call predecessors, (13), 3 states have call successors, (13) [2022-04-08 12:35:08,504 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 330 states and 456 transitions. [2022-04-08 12:35:09,456 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 456 edges. 456 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:35:09,457 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 456 transitions. [2022-04-08 12:35:09,458 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-08 12:35:09,458 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:35:09,458 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 3, 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 12:35:09,485 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 12:35:09,681 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 12:35:09,681 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:35:09,681 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:35:09,681 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 3 times [2022-04-08 12:35:09,682 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:35:09,682 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2011908851] [2022-04-08 12:35:09,682 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:35:09,682 INFO L85 PathProgramCache]: Analyzing trace with hash -1455197645, now seen corresponding path program 4 times [2022-04-08 12:35:09,682 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:35:09,682 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [32496570] [2022-04-08 12:35:09,682 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:35:09,682 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:35:09,697 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:35:09,697 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1212588690] [2022-04-08 12:35:09,697 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:35:09,697 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:35:09,697 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:35:09,698 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 12:35:09,699 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 12:35:09,757 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:35:09,757 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:35:09,758 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 86 conjunts are in the unsatisfiable core [2022-04-08 12:35:09,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:35:09,778 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:35:11,541 INFO L272 TraceCheckUtils]: 0: Hoare triple {20378#true} call ULTIMATE.init(); {20378#true} is VALID [2022-04-08 12:35:11,541 INFO L290 TraceCheckUtils]: 1: Hoare triple {20378#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(11, 2);call #Ultimate.allocInit(12, 3); {20378#true} is VALID [2022-04-08 12:35:11,542 INFO L290 TraceCheckUtils]: 2: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:35:11,542 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20378#true} {20378#true} #112#return; {20378#true} is VALID [2022-04-08 12:35:11,542 INFO L272 TraceCheckUtils]: 4: Hoare triple {20378#true} call #t~ret6 := main(); {20378#true} is VALID [2022-04-08 12:35:11,542 INFO L290 TraceCheckUtils]: 5: Hoare triple {20378#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {20378#true} is VALID [2022-04-08 12:35:11,542 INFO L272 TraceCheckUtils]: 6: Hoare triple {20378#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,542 INFO L290 TraceCheckUtils]: 7: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:35:11,542 INFO L290 TraceCheckUtils]: 8: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:35:11,542 INFO L290 TraceCheckUtils]: 9: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:35:11,542 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20378#true} {20378#true} #94#return; {20378#true} is VALID [2022-04-08 12:35:11,542 INFO L290 TraceCheckUtils]: 11: Hoare triple {20378#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L272 TraceCheckUtils]: 12: Hoare triple {20378#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L290 TraceCheckUtils]: 13: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L290 TraceCheckUtils]: 14: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L290 TraceCheckUtils]: 15: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {20378#true} {20378#true} #96#return; {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L272 TraceCheckUtils]: 17: Hoare triple {20378#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L290 TraceCheckUtils]: 18: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L290 TraceCheckUtils]: 19: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L290 TraceCheckUtils]: 20: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20378#true} {20378#true} #98#return; {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L272 TraceCheckUtils]: 22: Hoare triple {20378#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L290 TraceCheckUtils]: 23: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L290 TraceCheckUtils]: 24: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:35:11,543 INFO L290 TraceCheckUtils]: 25: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:35:11,544 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20378#true} {20378#true} #100#return; {20378#true} is VALID [2022-04-08 12:35:11,544 INFO L290 TraceCheckUtils]: 27: Hoare triple {20378#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {20464#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 12:35:11,544 INFO L290 TraceCheckUtils]: 28: Hoare triple {20464#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {20464#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 12:35:11,545 INFO L290 TraceCheckUtils]: 29: Hoare triple {20464#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20471#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:35:11,545 INFO L290 TraceCheckUtils]: 30: Hoare triple {20471#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {20471#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:35:11,546 INFO L290 TraceCheckUtils]: 31: Hoare triple {20471#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {20478#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:35:11,546 INFO L290 TraceCheckUtils]: 32: Hoare triple {20478#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20482#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:35:11,547 INFO L290 TraceCheckUtils]: 33: Hoare triple {20482#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20482#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:35:11,547 INFO L290 TraceCheckUtils]: 34: Hoare triple {20482#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20489#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:35:11,548 INFO L290 TraceCheckUtils]: 35: Hoare triple {20489#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {20489#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:35:11,548 INFO L290 TraceCheckUtils]: 36: Hoare triple {20489#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:35:11,549 INFO L290 TraceCheckUtils]: 37: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:35:11,549 INFO L272 TraceCheckUtils]: 38: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,549 INFO L290 TraceCheckUtils]: 39: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:35:11,549 INFO L290 TraceCheckUtils]: 40: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:35:11,549 INFO L290 TraceCheckUtils]: 41: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:35:11,550 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20378#true} {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:35:11,550 INFO L272 TraceCheckUtils]: 43: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,550 INFO L290 TraceCheckUtils]: 44: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:35:11,550 INFO L290 TraceCheckUtils]: 45: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:35:11,550 INFO L290 TraceCheckUtils]: 46: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:35:11,555 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20378#true} {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:35:11,555 INFO L272 TraceCheckUtils]: 48: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,555 INFO L290 TraceCheckUtils]: 49: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:35:11,555 INFO L290 TraceCheckUtils]: 50: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:35:11,555 INFO L290 TraceCheckUtils]: 51: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:35:11,556 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20378#true} {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #106#return; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:35:11,556 INFO L272 TraceCheckUtils]: 53: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,557 INFO L290 TraceCheckUtils]: 54: Hoare triple {20378#true} ~cond := #in~cond; {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:35:11,557 INFO L290 TraceCheckUtils]: 55: Hoare triple {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:11,557 INFO L290 TraceCheckUtils]: 56: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:11,558 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #108#return; {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:35:11,558 INFO L290 TraceCheckUtils]: 58: Hoare triple {20496#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {20565#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-08 12:35:11,559 INFO L290 TraceCheckUtils]: 59: Hoare triple {20565#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !false; {20565#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-08 12:35:11,559 INFO L272 TraceCheckUtils]: 60: Hoare triple {20565#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,559 INFO L290 TraceCheckUtils]: 61: Hoare triple {20378#true} ~cond := #in~cond; {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:35:11,560 INFO L290 TraceCheckUtils]: 62: Hoare triple {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:11,560 INFO L290 TraceCheckUtils]: 63: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:11,561 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20565#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #102#return; {20584#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:35:11,561 INFO L272 TraceCheckUtils]: 65: Hoare triple {20584#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,561 INFO L290 TraceCheckUtils]: 66: Hoare triple {20378#true} ~cond := #in~cond; {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:35:11,562 INFO L290 TraceCheckUtils]: 67: Hoare triple {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:11,562 INFO L290 TraceCheckUtils]: 68: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:11,563 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20584#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:35:11,563 INFO L272 TraceCheckUtils]: 70: Hoare triple {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,563 INFO L290 TraceCheckUtils]: 71: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:35:11,563 INFO L290 TraceCheckUtils]: 72: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:35:11,563 INFO L290 TraceCheckUtils]: 73: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:35:11,564 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {20378#true} {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:35:11,564 INFO L272 TraceCheckUtils]: 75: Hoare triple {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:35:11,564 INFO L290 TraceCheckUtils]: 76: Hoare triple {20378#true} ~cond := #in~cond; {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:35:11,565 INFO L290 TraceCheckUtils]: 77: Hoare triple {20551#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:11,565 INFO L290 TraceCheckUtils]: 78: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:35:11,566 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:35:11,566 INFO L290 TraceCheckUtils]: 80: Hoare triple {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:35:11,567 INFO L290 TraceCheckUtils]: 81: Hoare triple {20600#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {20637#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:35:11,568 INFO L290 TraceCheckUtils]: 82: Hoare triple {20637#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {20637#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:35:11,569 INFO L290 TraceCheckUtils]: 83: Hoare triple {20637#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {20644#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (< main_~c~0 main_~b~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:35:11,570 INFO L290 TraceCheckUtils]: 84: Hoare triple {20644#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (= main_~b~0 main_~x~0) (= main_~k~0 2) (< main_~c~0 main_~b~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20648#(and (= main_~r~0 0) (< main_~y~0 (* main_~a~0 3)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-08 12:35:11,570 INFO L290 TraceCheckUtils]: 85: Hoare triple {20648#(and (= main_~r~0 0) (< main_~y~0 (* main_~a~0 3)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !false; {20648#(and (= main_~r~0 0) (< main_~y~0 (* main_~a~0 3)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-08 12:35:11,571 INFO L290 TraceCheckUtils]: 86: Hoare triple {20648#(and (= main_~r~0 0) (< main_~y~0 (* main_~a~0 3)) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !(0 != ~b~0); {20655#(and (= main_~r~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (* main_~a~0 2) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-08 12:35:11,573 INFO L272 TraceCheckUtils]: 87: Hoare triple {20655#(and (= main_~r~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (* main_~a~0 2) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {20659#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:35:11,573 INFO L290 TraceCheckUtils]: 88: Hoare triple {20659#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20663#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:35:11,573 INFO L290 TraceCheckUtils]: 89: Hoare triple {20663#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20379#false} is VALID [2022-04-08 12:35:11,573 INFO L290 TraceCheckUtils]: 90: Hoare triple {20379#false} assume !false; {20379#false} is VALID [2022-04-08 12:35:11,574 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 51 proven. 32 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-08 12:35:11,574 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:36:28,237 INFO L290 TraceCheckUtils]: 90: Hoare triple {20379#false} assume !false; {20379#false} is VALID [2022-04-08 12:36:28,238 INFO L290 TraceCheckUtils]: 89: Hoare triple {20663#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20379#false} is VALID [2022-04-08 12:36:28,238 INFO L290 TraceCheckUtils]: 88: Hoare triple {20659#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20663#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:36:28,239 INFO L272 TraceCheckUtils]: 87: Hoare triple {20679#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {20659#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:36:28,239 INFO L290 TraceCheckUtils]: 86: Hoare triple {20683#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {20679#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:36:28,240 INFO L290 TraceCheckUtils]: 85: Hoare triple {20683#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {20683#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 12:36:28,506 INFO L290 TraceCheckUtils]: 84: Hoare triple {20690#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20683#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 12:36:28,507 INFO L290 TraceCheckUtils]: 83: Hoare triple {20694#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {20690#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:36:28,508 INFO L290 TraceCheckUtils]: 82: Hoare triple {20694#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {20694#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:36:28,690 INFO L290 TraceCheckUtils]: 81: Hoare triple {20701#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {20694#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:36:28,690 INFO L290 TraceCheckUtils]: 80: Hoare triple {20701#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {20701#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:36:28,691 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {20701#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:36:28,692 INFO L290 TraceCheckUtils]: 78: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:28,692 INFO L290 TraceCheckUtils]: 77: Hoare triple {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:28,692 INFO L290 TraceCheckUtils]: 76: Hoare triple {20378#true} ~cond := #in~cond; {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:36:28,693 INFO L272 TraceCheckUtils]: 75: Hoare triple {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,693 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {20378#true} {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:36:28,693 INFO L290 TraceCheckUtils]: 73: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:36:28,693 INFO L290 TraceCheckUtils]: 72: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:36:28,694 INFO L290 TraceCheckUtils]: 71: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:36:28,694 INFO L272 TraceCheckUtils]: 70: Hoare triple {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,695 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20740#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {20708#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:36:28,695 INFO L290 TraceCheckUtils]: 68: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:28,695 INFO L290 TraceCheckUtils]: 67: Hoare triple {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:28,696 INFO L290 TraceCheckUtils]: 66: Hoare triple {20378#true} ~cond := #in~cond; {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:36:28,696 INFO L272 TraceCheckUtils]: 65: Hoare triple {20740#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,697 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} {20756#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {20740#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:36:28,697 INFO L290 TraceCheckUtils]: 63: Hoare triple {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:28,697 INFO L290 TraceCheckUtils]: 62: Hoare triple {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {20555#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:28,698 INFO L290 TraceCheckUtils]: 61: Hoare triple {20378#true} ~cond := #in~cond; {20718#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:36:28,698 INFO L272 TraceCheckUtils]: 60: Hoare triple {20756#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,698 INFO L290 TraceCheckUtils]: 59: Hoare triple {20756#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {20756#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:36:28,706 INFO L290 TraceCheckUtils]: 58: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {20756#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:36:28,707 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {20378#true} {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} #108#return; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 12:36:28,707 INFO L290 TraceCheckUtils]: 56: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:36:28,707 INFO L290 TraceCheckUtils]: 55: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:36:28,707 INFO L290 TraceCheckUtils]: 54: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:36:28,707 INFO L272 TraceCheckUtils]: 53: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,708 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {20378#true} {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} #106#return; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 12:36:28,708 INFO L290 TraceCheckUtils]: 51: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:36:28,708 INFO L290 TraceCheckUtils]: 50: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:36:28,708 INFO L290 TraceCheckUtils]: 49: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:36:28,708 INFO L272 TraceCheckUtils]: 48: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,709 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {20378#true} {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} #104#return; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 12:36:28,709 INFO L290 TraceCheckUtils]: 46: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:36:28,709 INFO L290 TraceCheckUtils]: 45: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:36:28,709 INFO L290 TraceCheckUtils]: 44: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:36:28,710 INFO L272 TraceCheckUtils]: 43: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,710 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {20378#true} {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} #102#return; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 12:36:28,710 INFO L290 TraceCheckUtils]: 41: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:36:28,710 INFO L290 TraceCheckUtils]: 40: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:36:28,711 INFO L290 TraceCheckUtils]: 39: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:36:28,711 INFO L272 TraceCheckUtils]: 38: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,711 INFO L290 TraceCheckUtils]: 37: Hoare triple {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} assume !false; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 12:36:28,712 INFO L290 TraceCheckUtils]: 36: Hoare triple {20842#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {20775#(or (not (= (* main_~v~0 2) (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))) (<= main_~b~0 0))} is VALID [2022-04-08 12:36:28,713 INFO L290 TraceCheckUtils]: 35: Hoare triple {20842#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !false; {20842#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-08 12:36:28,713 INFO L290 TraceCheckUtils]: 34: Hoare triple {20378#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20842#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-08 12:36:28,713 INFO L290 TraceCheckUtils]: 33: Hoare triple {20378#true} assume !false; {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L290 TraceCheckUtils]: 32: Hoare triple {20378#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L290 TraceCheckUtils]: 31: Hoare triple {20378#true} assume !(~c~0 >= ~b~0); {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L290 TraceCheckUtils]: 30: Hoare triple {20378#true} assume !false; {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L290 TraceCheckUtils]: 29: Hoare triple {20378#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L290 TraceCheckUtils]: 28: Hoare triple {20378#true} assume !false; {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L290 TraceCheckUtils]: 27: Hoare triple {20378#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20378#true} {20378#true} #100#return; {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L290 TraceCheckUtils]: 25: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L290 TraceCheckUtils]: 24: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L290 TraceCheckUtils]: 23: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L272 TraceCheckUtils]: 22: Hoare triple {20378#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20378#true} {20378#true} #98#return; {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L290 TraceCheckUtils]: 20: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:36:28,714 INFO L290 TraceCheckUtils]: 19: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L290 TraceCheckUtils]: 18: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L272 TraceCheckUtils]: 17: Hoare triple {20378#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {20378#true} {20378#true} #96#return; {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L290 TraceCheckUtils]: 15: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L290 TraceCheckUtils]: 14: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L290 TraceCheckUtils]: 13: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L272 TraceCheckUtils]: 12: Hoare triple {20378#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L290 TraceCheckUtils]: 11: Hoare triple {20378#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20378#true} {20378#true} #94#return; {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L290 TraceCheckUtils]: 9: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L290 TraceCheckUtils]: 8: Hoare triple {20378#true} assume !(0 == ~cond); {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L290 TraceCheckUtils]: 7: Hoare triple {20378#true} ~cond := #in~cond; {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L272 TraceCheckUtils]: 6: Hoare triple {20378#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {20378#true} is VALID [2022-04-08 12:36:28,715 INFO L290 TraceCheckUtils]: 5: Hoare triple {20378#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {20378#true} is VALID [2022-04-08 12:36:28,716 INFO L272 TraceCheckUtils]: 4: Hoare triple {20378#true} call #t~ret6 := main(); {20378#true} is VALID [2022-04-08 12:36:28,716 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20378#true} {20378#true} #112#return; {20378#true} is VALID [2022-04-08 12:36:28,716 INFO L290 TraceCheckUtils]: 2: Hoare triple {20378#true} assume true; {20378#true} is VALID [2022-04-08 12:36:28,716 INFO L290 TraceCheckUtils]: 1: Hoare triple {20378#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(11, 2);call #Ultimate.allocInit(12, 3); {20378#true} is VALID [2022-04-08 12:36:28,716 INFO L272 TraceCheckUtils]: 0: Hoare triple {20378#true} call ULTIMATE.init(); {20378#true} is VALID [2022-04-08 12:36:28,716 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 61 proven. 17 refuted. 0 times theorem prover too weak. 93 trivial. 0 not checked. [2022-04-08 12:36:28,716 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:36:28,716 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [32496570] [2022-04-08 12:36:28,717 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:36:28,717 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1212588690] [2022-04-08 12:36:28,717 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1212588690] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:36:28,717 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:36:28,717 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 16] total 30 [2022-04-08 12:36:28,717 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:36:28,717 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2011908851] [2022-04-08 12:36:28,717 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2011908851] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:36:28,717 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:36:28,717 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-08 12:36:28,718 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1785618168] [2022-04-08 12:36:28,718 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:36:28,718 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) Word has length 91 [2022-04-08 12:36:28,718 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:36:28,718 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 12:36:28,786 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 12:36:28,786 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-08 12:36:28,786 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:28,787 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-08 12:36:28,787 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=142, Invalid=728, Unknown=0, NotChecked=0, Total=870 [2022-04-08 12:36:28,787 INFO L87 Difference]: Start difference. First operand 330 states and 456 transitions. Second operand has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 12:36:34,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:34,897 INFO L93 Difference]: Finished difference Result 422 states and 582 transitions. [2022-04-08 12:36:34,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-08 12:36:34,897 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) Word has length 91 [2022-04-08 12:36:34,898 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:36:34,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 12:36:34,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 175 transitions. [2022-04-08 12:36:34,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 12:36:34,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 175 transitions. [2022-04-08 12:36:34,903 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 175 transitions. [2022-04-08 12:36:35,118 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:35,133 INFO L225 Difference]: With dead ends: 422 [2022-04-08 12:36:35,134 INFO L226 Difference]: Without dead ends: 419 [2022-04-08 12:36:35,134 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 189 GetRequests, 150 SyntacticMatches, 3 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 307 ImplicationChecksByTransitivity, 4.5s TimeCoverageRelationStatistics Valid=230, Invalid=1176, Unknown=0, NotChecked=0, Total=1406 [2022-04-08 12:36:35,136 INFO L913 BasicCegarLoop]: 59 mSDtfsCounter, 65 mSDsluCounter, 418 mSDsCounter, 0 mSdLazyCounter, 1295 mSolverCounterSat, 48 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 83 SdHoareTripleChecker+Valid, 477 SdHoareTripleChecker+Invalid, 1343 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 48 IncrementalHoareTripleChecker+Valid, 1295 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.9s IncrementalHoareTripleChecker+Time [2022-04-08 12:36:35,136 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [83 Valid, 477 Invalid, 1343 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [48 Valid, 1295 Invalid, 0 Unknown, 0 Unchecked, 1.9s Time] [2022-04-08 12:36:35,136 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 419 states. [2022-04-08 12:36:36,407 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 419 to 399. [2022-04-08 12:36:36,408 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:36:36,408 INFO L82 GeneralOperation]: Start isEquivalent. First operand 419 states. Second operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-08 12:36:36,409 INFO L74 IsIncluded]: Start isIncluded. First operand 419 states. Second operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-08 12:36:36,410 INFO L87 Difference]: Start difference. First operand 419 states. Second operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-08 12:36:36,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:36,423 INFO L93 Difference]: Finished difference Result 419 states and 578 transitions. [2022-04-08 12:36:36,423 INFO L276 IsEmpty]: Start isEmpty. Operand 419 states and 578 transitions. [2022-04-08 12:36:36,424 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:36,425 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:36,425 INFO L74 IsIncluded]: Start isIncluded. First operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 419 states. [2022-04-08 12:36:36,426 INFO L87 Difference]: Start difference. First operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) Second operand 419 states. [2022-04-08 12:36:36,438 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:36:36,439 INFO L93 Difference]: Finished difference Result 419 states and 578 transitions. [2022-04-08 12:36:36,439 INFO L276 IsEmpty]: Start isEmpty. Operand 419 states and 578 transitions. [2022-04-08 12:36:36,440 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:36:36,440 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:36:36,440 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:36:36,440 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:36:36,441 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 399 states, 228 states have (on average 1.2017543859649122) internal successors, (274), 229 states have internal predecessors, (274), 143 states have call successors, (143), 28 states have call predecessors, (143), 27 states have return successors, (141), 141 states have call predecessors, (141), 141 states have call successors, (141) [2022-04-08 12:36:36,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 399 states to 399 states and 558 transitions. [2022-04-08 12:36:36,465 INFO L78 Accepts]: Start accepts. Automaton has 399 states and 558 transitions. Word has length 91 [2022-04-08 12:36:36,466 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:36:36,466 INFO L478 AbstractCegarLoop]: Abstraction has 399 states and 558 transitions. [2022-04-08 12:36:36,466 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 17 states have (on average 2.1176470588235294) internal successors, (36), 17 states have internal predecessors, (36), 6 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 4 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-08 12:36:36,466 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 399 states and 558 transitions. [2022-04-08 12:36:37,998 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 558 edges. 558 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:36:37,999 INFO L276 IsEmpty]: Start isEmpty. Operand 399 states and 558 transitions. [2022-04-08 12:36:38,000 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-08 12:36:38,000 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:36:38,000 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 5, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 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 12:36:38,025 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-08 12:36:38,200 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 12:36:38,201 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:36:38,201 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:36:38,201 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 7 times [2022-04-08 12:36:38,201 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:36:38,201 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1090365891] [2022-04-08 12:36:38,201 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:36:38,202 INFO L85 PathProgramCache]: Analyzing trace with hash -100199667, now seen corresponding path program 8 times [2022-04-08 12:36:38,202 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:36:38,202 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1553655138] [2022-04-08 12:36:38,202 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:36:38,202 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:36:38,214 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:36:38,215 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1902711957] [2022-04-08 12:36:38,215 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:36:38,215 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:36:38,215 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:36:38,226 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 12:36:38,227 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 12:36:38,288 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:36:38,288 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:36:38,290 INFO L263 TraceCheckSpWp]: Trace formula consists of 266 conjuncts, 96 conjunts are in the unsatisfiable core [2022-04-08 12:36:38,309 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:36:38,310 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:36:54,302 INFO L272 TraceCheckUtils]: 0: Hoare triple {23449#true} call ULTIMATE.init(); {23449#true} is VALID [2022-04-08 12:36:54,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {23449#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(11, 2);call #Ultimate.allocInit(12, 3); {23449#true} is VALID [2022-04-08 12:36:54,302 INFO L290 TraceCheckUtils]: 2: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23449#true} {23449#true} #112#return; {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L272 TraceCheckUtils]: 4: Hoare triple {23449#true} call #t~ret6 := main(); {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L290 TraceCheckUtils]: 5: Hoare triple {23449#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L272 TraceCheckUtils]: 6: Hoare triple {23449#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L290 TraceCheckUtils]: 7: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L290 TraceCheckUtils]: 8: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L290 TraceCheckUtils]: 9: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23449#true} {23449#true} #94#return; {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L290 TraceCheckUtils]: 11: Hoare triple {23449#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L272 TraceCheckUtils]: 12: Hoare triple {23449#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L290 TraceCheckUtils]: 13: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L290 TraceCheckUtils]: 14: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L290 TraceCheckUtils]: 15: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:36:54,303 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {23449#true} {23449#true} #96#return; {23449#true} is VALID [2022-04-08 12:36:54,304 INFO L272 TraceCheckUtils]: 17: Hoare triple {23449#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,304 INFO L290 TraceCheckUtils]: 18: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:36:54,304 INFO L290 TraceCheckUtils]: 19: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:36:54,304 INFO L290 TraceCheckUtils]: 20: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:36:54,304 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {23449#true} {23449#true} #98#return; {23449#true} is VALID [2022-04-08 12:36:54,304 INFO L272 TraceCheckUtils]: 22: Hoare triple {23449#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,304 INFO L290 TraceCheckUtils]: 23: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:36:54,304 INFO L290 TraceCheckUtils]: 24: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:36:54,304 INFO L290 TraceCheckUtils]: 25: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:36:54,304 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {23449#true} {23449#true} #100#return; {23449#true} is VALID [2022-04-08 12:36:54,305 INFO L290 TraceCheckUtils]: 27: Hoare triple {23449#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23535#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,305 INFO L290 TraceCheckUtils]: 28: Hoare triple {23535#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23535#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,305 INFO L290 TraceCheckUtils]: 29: Hoare triple {23535#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23542#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,306 INFO L290 TraceCheckUtils]: 30: Hoare triple {23542#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23542#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,306 INFO L290 TraceCheckUtils]: 31: Hoare triple {23542#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23549#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,307 INFO L290 TraceCheckUtils]: 32: Hoare triple {23549#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {23549#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,307 INFO L272 TraceCheckUtils]: 33: Hoare triple {23549#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,307 INFO L290 TraceCheckUtils]: 34: Hoare triple {23449#true} ~cond := #in~cond; {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:36:54,307 INFO L290 TraceCheckUtils]: 35: Hoare triple {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:54,308 INFO L290 TraceCheckUtils]: 36: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:54,309 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23549#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,309 INFO L272 TraceCheckUtils]: 38: Hoare triple {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,309 INFO L290 TraceCheckUtils]: 39: Hoare triple {23449#true} ~cond := #in~cond; {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:36:54,309 INFO L290 TraceCheckUtils]: 40: Hoare triple {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:54,309 INFO L290 TraceCheckUtils]: 41: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:54,310 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,310 INFO L272 TraceCheckUtils]: 43: Hoare triple {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,310 INFO L290 TraceCheckUtils]: 44: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:36:54,310 INFO L290 TraceCheckUtils]: 45: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:36:54,310 INFO L290 TraceCheckUtils]: 46: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:36:54,311 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23449#true} {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,311 INFO L272 TraceCheckUtils]: 48: Hoare triple {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,311 INFO L290 TraceCheckUtils]: 49: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:36:54,311 INFO L290 TraceCheckUtils]: 50: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:36:54,311 INFO L290 TraceCheckUtils]: 51: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:36:54,312 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23449#true} {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,313 INFO L290 TraceCheckUtils]: 53: Hoare triple {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,313 INFO L290 TraceCheckUtils]: 54: Hoare triple {23570#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,313 INFO L290 TraceCheckUtils]: 55: Hoare triple {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,314 INFO L290 TraceCheckUtils]: 56: Hoare triple {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,314 INFO L290 TraceCheckUtils]: 57: Hoare triple {23622#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23632#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 12:36:54,315 INFO L290 TraceCheckUtils]: 58: Hoare triple {23632#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} assume !false; {23632#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 12:36:54,315 INFO L290 TraceCheckUtils]: 59: Hoare triple {23632#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23639#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 12:36:54,316 INFO L290 TraceCheckUtils]: 60: Hoare triple {23639#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} assume !false; {23639#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 12:36:54,316 INFO L290 TraceCheckUtils]: 61: Hoare triple {23639#(and (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23646#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 12:36:54,316 INFO L290 TraceCheckUtils]: 62: Hoare triple {23646#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} assume !false; {23646#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} is VALID [2022-04-08 12:36:54,317 INFO L272 TraceCheckUtils]: 63: Hoare triple {23646#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,317 INFO L290 TraceCheckUtils]: 64: Hoare triple {23449#true} ~cond := #in~cond; {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:36:54,317 INFO L290 TraceCheckUtils]: 65: Hoare triple {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:54,317 INFO L290 TraceCheckUtils]: 66: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:54,318 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23646#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1))} #102#return; {23665#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:36:54,318 INFO L272 TraceCheckUtils]: 68: Hoare triple {23665#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,321 INFO L290 TraceCheckUtils]: 69: Hoare triple {23449#true} ~cond := #in~cond; {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:36:54,322 INFO L290 TraceCheckUtils]: 70: Hoare triple {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:54,322 INFO L290 TraceCheckUtils]: 71: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:54,323 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23665#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:36:54,323 INFO L272 TraceCheckUtils]: 73: Hoare triple {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,323 INFO L290 TraceCheckUtils]: 74: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:36:54,323 INFO L290 TraceCheckUtils]: 75: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:36:54,323 INFO L290 TraceCheckUtils]: 76: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:36:54,324 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23449#true} {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:36:54,324 INFO L272 TraceCheckUtils]: 78: Hoare triple {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,324 INFO L290 TraceCheckUtils]: 79: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:36:54,324 INFO L290 TraceCheckUtils]: 80: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:36:54,324 INFO L290 TraceCheckUtils]: 81: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:36:54,325 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {23449#true} {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:36:54,326 INFO L290 TraceCheckUtils]: 83: Hoare triple {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:36:54,326 INFO L290 TraceCheckUtils]: 84: Hoare triple {23681#(and (= main_~b~0 main_~v~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:36:54,327 INFO L290 TraceCheckUtils]: 85: Hoare triple {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:36:54,327 INFO L290 TraceCheckUtils]: 86: Hoare triple {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:36:54,329 INFO L290 TraceCheckUtils]: 87: Hoare triple {23718#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~x~0 (+ main_~b~0 main_~y~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,330 INFO L290 TraceCheckUtils]: 88: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,330 INFO L290 TraceCheckUtils]: 89: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,331 INFO L290 TraceCheckUtils]: 90: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,332 INFO L290 TraceCheckUtils]: 91: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,332 INFO L290 TraceCheckUtils]: 92: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-08 12:36:54,332 INFO L272 TraceCheckUtils]: 93: Hoare triple {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:36:54,332 INFO L290 TraceCheckUtils]: 94: Hoare triple {23449#true} ~cond := #in~cond; {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:36:54,333 INFO L290 TraceCheckUtils]: 95: Hoare triple {23559#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:54,333 INFO L290 TraceCheckUtils]: 96: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:36:54,335 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23728#(and (= (+ main_~s~0 main_~r~0) 1) (= main_~b~0 (+ (* (+ main_~s~0 main_~r~0) main_~y~0) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) (* main_~y~0 main_~r~0)))) (= (+ (* main_~y~0 main_~r~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~x~0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #102#return; {23759#(and (= (* (- 1) main_~q~0) 1) (= (+ main_~b~0 (* main_~x~0 (* (- 1) main_~q~0))) (* main_~y~0 main_~s~0)) (= main_~x~0 (+ main_~y~0 (* main_~x~0 (* (- 1) main_~q~0)) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-08 12:36:54,336 INFO L272 TraceCheckUtils]: 98: Hoare triple {23759#(and (= (* (- 1) main_~q~0) 1) (= (+ main_~b~0 (* main_~x~0 (* (- 1) main_~q~0))) (* main_~y~0 main_~s~0)) (= main_~x~0 (+ main_~y~0 (* main_~x~0 (* (- 1) main_~q~0)) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23763#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:36:54,336 INFO L290 TraceCheckUtils]: 99: Hoare triple {23763#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23767#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:36:54,336 INFO L290 TraceCheckUtils]: 100: Hoare triple {23767#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23450#false} is VALID [2022-04-08 12:36:54,336 INFO L290 TraceCheckUtils]: 101: Hoare triple {23450#false} assume !false; {23450#false} is VALID [2022-04-08 12:36:54,337 INFO L134 CoverageAnalysis]: Checked inductivity of 226 backedges. 37 proven. 81 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-08 12:36:54,337 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:38:04,318 INFO L290 TraceCheckUtils]: 101: Hoare triple {23450#false} assume !false; {23450#false} is VALID [2022-04-08 12:38:04,328 INFO L290 TraceCheckUtils]: 100: Hoare triple {23767#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {23450#false} is VALID [2022-04-08 12:38:04,329 INFO L290 TraceCheckUtils]: 99: Hoare triple {23763#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23767#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:38:04,329 INFO L272 TraceCheckUtils]: 98: Hoare triple {23783#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23763#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:38:04,330 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #102#return; {23783#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:38:04,331 INFO L290 TraceCheckUtils]: 96: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:38:04,331 INFO L290 TraceCheckUtils]: 95: Hoare triple {23797#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:38:04,331 INFO L290 TraceCheckUtils]: 94: Hoare triple {23449#true} ~cond := #in~cond; {23797#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:38:04,331 INFO L272 TraceCheckUtils]: 93: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,332 INFO L290 TraceCheckUtils]: 92: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 12:38:04,332 INFO L290 TraceCheckUtils]: 91: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 12:38:04,333 INFO L290 TraceCheckUtils]: 90: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 12:38:04,333 INFO L290 TraceCheckUtils]: 89: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 12:38:04,334 INFO L290 TraceCheckUtils]: 88: Hoare triple {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !false; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 12:38:04,353 INFO L290 TraceCheckUtils]: 87: Hoare triple {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23787#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-08 12:38:04,354 INFO L290 TraceCheckUtils]: 86: Hoare triple {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= ~b~0); {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,354 INFO L290 TraceCheckUtils]: 85: Hoare triple {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,359 INFO L290 TraceCheckUtils]: 84: Hoare triple {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23819#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,360 INFO L290 TraceCheckUtils]: 83: Hoare triple {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,360 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {23449#true} {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #108#return; {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,361 INFO L290 TraceCheckUtils]: 81: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,361 INFO L290 TraceCheckUtils]: 80: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:38:04,361 INFO L290 TraceCheckUtils]: 79: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:38:04,361 INFO L272 TraceCheckUtils]: 78: Hoare triple {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,362 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23449#true} {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #106#return; {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,362 INFO L290 TraceCheckUtils]: 76: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,362 INFO L290 TraceCheckUtils]: 75: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:38:04,362 INFO L290 TraceCheckUtils]: 74: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:38:04,362 INFO L272 TraceCheckUtils]: 73: Hoare triple {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,363 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {23449#true} {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,363 INFO L290 TraceCheckUtils]: 71: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,363 INFO L290 TraceCheckUtils]: 70: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:38:04,363 INFO L290 TraceCheckUtils]: 69: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:38:04,363 INFO L272 TraceCheckUtils]: 68: Hoare triple {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,364 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} {23881#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {23829#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,364 INFO L290 TraceCheckUtils]: 66: Hoare triple {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:38:04,365 INFO L290 TraceCheckUtils]: 65: Hoare triple {23797#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {23563#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:38:04,365 INFO L290 TraceCheckUtils]: 64: Hoare triple {23449#true} ~cond := #in~cond; {23797#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:38:04,365 INFO L272 TraceCheckUtils]: 63: Hoare triple {23881#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,365 INFO L290 TraceCheckUtils]: 62: Hoare triple {23881#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23881#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,366 INFO L290 TraceCheckUtils]: 61: Hoare triple {23900#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23881#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,367 INFO L290 TraceCheckUtils]: 60: Hoare triple {23900#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23900#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,368 INFO L290 TraceCheckUtils]: 59: Hoare triple {23449#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23900#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:38:04,368 INFO L290 TraceCheckUtils]: 58: Hoare triple {23449#true} assume !false; {23449#true} is VALID [2022-04-08 12:38:04,368 INFO L290 TraceCheckUtils]: 57: Hoare triple {23449#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {23449#true} is VALID [2022-04-08 12:38:04,368 INFO L290 TraceCheckUtils]: 56: Hoare triple {23449#true} assume !(~c~0 >= ~b~0); {23449#true} is VALID [2022-04-08 12:38:04,368 INFO L290 TraceCheckUtils]: 55: Hoare triple {23449#true} assume !false; {23449#true} is VALID [2022-04-08 12:38:04,368 INFO L290 TraceCheckUtils]: 54: Hoare triple {23449#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {23449#true} is VALID [2022-04-08 12:38:04,368 INFO L290 TraceCheckUtils]: 53: Hoare triple {23449#true} assume !(~c~0 >= 2 * ~v~0); {23449#true} is VALID [2022-04-08 12:38:04,368 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {23449#true} {23449#true} #108#return; {23449#true} is VALID [2022-04-08 12:38:04,369 INFO L290 TraceCheckUtils]: 51: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,369 INFO L290 TraceCheckUtils]: 50: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:38:04,369 INFO L290 TraceCheckUtils]: 49: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:38:04,369 INFO L272 TraceCheckUtils]: 48: Hoare triple {23449#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,369 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {23449#true} {23449#true} #106#return; {23449#true} is VALID [2022-04-08 12:38:04,369 INFO L290 TraceCheckUtils]: 46: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,369 INFO L290 TraceCheckUtils]: 45: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:38:04,369 INFO L290 TraceCheckUtils]: 44: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:38:04,369 INFO L272 TraceCheckUtils]: 43: Hoare triple {23449#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,369 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {23449#true} {23449#true} #104#return; {23449#true} is VALID [2022-04-08 12:38:04,369 INFO L290 TraceCheckUtils]: 41: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L290 TraceCheckUtils]: 40: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L290 TraceCheckUtils]: 39: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L272 TraceCheckUtils]: 38: Hoare triple {23449#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {23449#true} {23449#true} #102#return; {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L290 TraceCheckUtils]: 36: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L290 TraceCheckUtils]: 35: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L290 TraceCheckUtils]: 34: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L272 TraceCheckUtils]: 33: Hoare triple {23449#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L290 TraceCheckUtils]: 32: Hoare triple {23449#true} assume !false; {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L290 TraceCheckUtils]: 31: Hoare triple {23449#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L290 TraceCheckUtils]: 30: Hoare triple {23449#true} assume !false; {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L290 TraceCheckUtils]: 29: Hoare triple {23449#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L290 TraceCheckUtils]: 28: Hoare triple {23449#true} assume !false; {23449#true} is VALID [2022-04-08 12:38:04,370 INFO L290 TraceCheckUtils]: 27: Hoare triple {23449#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {23449#true} {23449#true} #100#return; {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L290 TraceCheckUtils]: 25: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L290 TraceCheckUtils]: 24: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L290 TraceCheckUtils]: 23: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L272 TraceCheckUtils]: 22: Hoare triple {23449#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {23449#true} {23449#true} #98#return; {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L290 TraceCheckUtils]: 20: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L290 TraceCheckUtils]: 19: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L290 TraceCheckUtils]: 18: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L272 TraceCheckUtils]: 17: Hoare triple {23449#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {23449#true} {23449#true} #96#return; {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L290 TraceCheckUtils]: 15: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L290 TraceCheckUtils]: 14: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:38:04,371 INFO L290 TraceCheckUtils]: 13: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L272 TraceCheckUtils]: 12: Hoare triple {23449#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L290 TraceCheckUtils]: 11: Hoare triple {23449#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23449#true} {23449#true} #94#return; {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L290 TraceCheckUtils]: 9: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L290 TraceCheckUtils]: 8: Hoare triple {23449#true} assume !(0 == ~cond); {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L290 TraceCheckUtils]: 7: Hoare triple {23449#true} ~cond := #in~cond; {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L272 TraceCheckUtils]: 6: Hoare triple {23449#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L290 TraceCheckUtils]: 5: Hoare triple {23449#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L272 TraceCheckUtils]: 4: Hoare triple {23449#true} call #t~ret6 := main(); {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23449#true} {23449#true} #112#return; {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L290 TraceCheckUtils]: 2: Hoare triple {23449#true} assume true; {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L290 TraceCheckUtils]: 1: Hoare triple {23449#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(11, 2);call #Ultimate.allocInit(12, 3); {23449#true} is VALID [2022-04-08 12:38:04,372 INFO L272 TraceCheckUtils]: 0: Hoare triple {23449#true} call ULTIMATE.init(); {23449#true} is VALID [2022-04-08 12:38:04,373 INFO L134 CoverageAnalysis]: Checked inductivity of 226 backedges. 78 proven. 18 refuted. 0 times theorem prover too weak. 130 trivial. 0 not checked. [2022-04-08 12:38:04,373 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:38:04,373 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1553655138] [2022-04-08 12:38:04,373 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:38:04,373 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1902711957] [2022-04-08 12:38:04,373 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1902711957] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:38:04,373 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:38:04,373 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 12] total 26 [2022-04-08 12:38:04,373 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:38:04,374 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1090365891] [2022-04-08 12:38:04,374 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1090365891] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:38:04,374 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:38:04,374 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-08 12:38:04,374 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [308547954] [2022-04-08 12:38:04,374 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:38:04,374 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) Word has length 102 [2022-04-08 12:38:04,374 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:38:04,375 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 12:38:04,452 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 12:38:04,452 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-08 12:38:04,452 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:38:04,453 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-08 12:38:04,453 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=106, Invalid=544, Unknown=0, NotChecked=0, Total=650 [2022-04-08 12:38:04,453 INFO L87 Difference]: Start difference. First operand 399 states and 558 transitions. Second operand has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 12:38:09,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:38:09,559 INFO L93 Difference]: Finished difference Result 474 states and 649 transitions. [2022-04-08 12:38:09,559 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-08 12:38:09,559 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) Word has length 102 [2022-04-08 12:38:09,559 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:38:09,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 12:38:09,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-08 12:38:09,562 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 12:38:09,564 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 163 transitions. [2022-04-08 12:38:09,564 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 163 transitions. [2022-04-08 12:38:09,766 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 163 edges. 163 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:38:09,777 INFO L225 Difference]: With dead ends: 474 [2022-04-08 12:38:09,777 INFO L226 Difference]: Without dead ends: 472 [2022-04-08 12:38:09,777 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 208 GetRequests, 176 SyntacticMatches, 3 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 212 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=146, Invalid=784, Unknown=0, NotChecked=0, Total=930 [2022-04-08 12:38:09,778 INFO L913 BasicCegarLoop]: 49 mSDtfsCounter, 63 mSDsluCounter, 423 mSDsCounter, 0 mSdLazyCounter, 1133 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 472 SdHoareTripleChecker+Invalid, 1169 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 1133 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-08 12:38:09,778 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [89 Valid, 472 Invalid, 1169 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 1133 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-08 12:38:09,779 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 472 states. [2022-04-08 12:38:11,155 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 472 to 454. [2022-04-08 12:38:11,155 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:38:11,156 INFO L82 GeneralOperation]: Start isEquivalent. First operand 472 states. Second operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-08 12:38:11,156 INFO L74 IsIncluded]: Start isIncluded. First operand 472 states. Second operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-08 12:38:11,157 INFO L87 Difference]: Start difference. First operand 472 states. Second operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-08 12:38:11,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:38:11,168 INFO L93 Difference]: Finished difference Result 472 states and 647 transitions. [2022-04-08 12:38:11,168 INFO L276 IsEmpty]: Start isEmpty. Operand 472 states and 647 transitions. [2022-04-08 12:38:11,169 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:38:11,169 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:38:11,170 INFO L74 IsIncluded]: Start isIncluded. First operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) Second operand 472 states. [2022-04-08 12:38:11,170 INFO L87 Difference]: Start difference. First operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) Second operand 472 states. [2022-04-08 12:38:11,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:38:11,184 INFO L93 Difference]: Finished difference Result 472 states and 647 transitions. [2022-04-08 12:38:11,184 INFO L276 IsEmpty]: Start isEmpty. Operand 472 states and 647 transitions. [2022-04-08 12:38:11,186 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:38:11,186 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:38:11,186 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:38:11,186 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:38:11,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 454 states, 262 states have (on average 1.1946564885496183) internal successors, (313), 263 states have internal predecessors, (313), 159 states have call successors, (159), 33 states have call predecessors, (159), 32 states have return successors, (157), 157 states have call predecessors, (157), 157 states have call successors, (157) [2022-04-08 12:38:11,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 454 states to 454 states and 629 transitions. [2022-04-08 12:38:11,203 INFO L78 Accepts]: Start accepts. Automaton has 454 states and 629 transitions. Word has length 102 [2022-04-08 12:38:11,204 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:38:11,204 INFO L478 AbstractCegarLoop]: Abstraction has 454 states and 629 transitions. [2022-04-08 12:38:11,204 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 17 states have (on average 2.4705882352941178) internal successors, (42), 16 states have internal predecessors, (42), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-08 12:38:11,204 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 454 states and 629 transitions. [2022-04-08 12:38:12,697 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 629 edges. 629 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:38:12,698 INFO L276 IsEmpty]: Start isEmpty. Operand 454 states and 629 transitions. [2022-04-08 12:38:12,699 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-08 12:38:12,699 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:38:12,699 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 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, 1] [2022-04-08 12:38:12,726 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 12:38:12,915 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 12:38:12,916 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:38:12,916 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:38:12,916 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 5 times [2022-04-08 12:38:12,916 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:38:12,916 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [293671187] [2022-04-08 12:38:12,917 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:38:12,917 INFO L85 PathProgramCache]: Analyzing trace with hash -1948981098, now seen corresponding path program 6 times [2022-04-08 12:38:12,917 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:38:12,917 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1989038899] [2022-04-08 12:38:12,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:38:12,917 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:38:12,928 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:38:12,928 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [526392230] [2022-04-08 12:38:12,928 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 12:38:12,929 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:38:12,929 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:38:12,930 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 12:38:12,932 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 12:38:12,994 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 12:38:12,994 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:38:12,996 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 58 conjunts are in the unsatisfiable core [2022-04-08 12:38:13,017 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:38:13,018 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:38:33,700 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:38:34,054 INFO L272 TraceCheckUtils]: 0: Hoare triple {26896#true} call ULTIMATE.init(); {26896#true} is VALID [2022-04-08 12:38:34,055 INFO L290 TraceCheckUtils]: 1: Hoare triple {26896#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(11, 2);call #Ultimate.allocInit(12, 3); {26896#true} is VALID [2022-04-08 12:38:34,055 INFO L290 TraceCheckUtils]: 2: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,055 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26896#true} {26896#true} #112#return; {26896#true} is VALID [2022-04-08 12:38:34,055 INFO L272 TraceCheckUtils]: 4: Hoare triple {26896#true} call #t~ret6 := main(); {26896#true} is VALID [2022-04-08 12:38:34,055 INFO L290 TraceCheckUtils]: 5: Hoare triple {26896#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {26896#true} is VALID [2022-04-08 12:38:34,055 INFO L272 TraceCheckUtils]: 6: Hoare triple {26896#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,055 INFO L290 TraceCheckUtils]: 7: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,055 INFO L290 TraceCheckUtils]: 8: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,055 INFO L290 TraceCheckUtils]: 9: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,055 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26896#true} {26896#true} #94#return; {26896#true} is VALID [2022-04-08 12:38:34,055 INFO L290 TraceCheckUtils]: 11: Hoare triple {26896#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L272 TraceCheckUtils]: 12: Hoare triple {26896#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L290 TraceCheckUtils]: 13: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L290 TraceCheckUtils]: 14: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L290 TraceCheckUtils]: 15: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {26896#true} {26896#true} #96#return; {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L272 TraceCheckUtils]: 17: Hoare triple {26896#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L290 TraceCheckUtils]: 18: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L290 TraceCheckUtils]: 19: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L290 TraceCheckUtils]: 20: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26896#true} {26896#true} #98#return; {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L272 TraceCheckUtils]: 22: Hoare triple {26896#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L290 TraceCheckUtils]: 23: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L290 TraceCheckUtils]: 24: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,056 INFO L290 TraceCheckUtils]: 25: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,057 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {26896#true} {26896#true} #100#return; {26896#true} is VALID [2022-04-08 12:38:34,057 INFO L290 TraceCheckUtils]: 27: Hoare triple {26896#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {26982#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,057 INFO L290 TraceCheckUtils]: 28: Hoare triple {26982#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {26982#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,058 INFO L290 TraceCheckUtils]: 29: Hoare triple {26982#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,058 INFO L290 TraceCheckUtils]: 30: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,058 INFO L290 TraceCheckUtils]: 31: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,059 INFO L290 TraceCheckUtils]: 32: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,059 INFO L272 TraceCheckUtils]: 33: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,059 INFO L290 TraceCheckUtils]: 34: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,059 INFO L290 TraceCheckUtils]: 35: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,059 INFO L290 TraceCheckUtils]: 36: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,060 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,060 INFO L272 TraceCheckUtils]: 38: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,060 INFO L290 TraceCheckUtils]: 39: Hoare triple {26896#true} ~cond := #in~cond; {27020#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:38:34,061 INFO L290 TraceCheckUtils]: 40: Hoare triple {27020#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:38:34,061 INFO L290 TraceCheckUtils]: 41: Hoare triple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:38:34,062 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,062 INFO L272 TraceCheckUtils]: 43: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,062 INFO L290 TraceCheckUtils]: 44: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,062 INFO L290 TraceCheckUtils]: 45: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,062 INFO L290 TraceCheckUtils]: 46: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,063 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,063 INFO L272 TraceCheckUtils]: 48: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,063 INFO L290 TraceCheckUtils]: 49: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,063 INFO L290 TraceCheckUtils]: 50: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,063 INFO L290 TraceCheckUtils]: 51: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,064 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,064 INFO L290 TraceCheckUtils]: 53: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,064 INFO L290 TraceCheckUtils]: 54: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,064 INFO L272 TraceCheckUtils]: 55: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,065 INFO L290 TraceCheckUtils]: 56: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,065 INFO L290 TraceCheckUtils]: 57: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,065 INFO L290 TraceCheckUtils]: 58: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,065 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,065 INFO L272 TraceCheckUtils]: 60: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,066 INFO L290 TraceCheckUtils]: 61: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,066 INFO L290 TraceCheckUtils]: 62: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,066 INFO L290 TraceCheckUtils]: 63: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,066 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,066 INFO L272 TraceCheckUtils]: 65: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,066 INFO L290 TraceCheckUtils]: 66: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,067 INFO L290 TraceCheckUtils]: 67: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,067 INFO L290 TraceCheckUtils]: 68: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,067 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,067 INFO L272 TraceCheckUtils]: 70: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,067 INFO L290 TraceCheckUtils]: 71: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,068 INFO L290 TraceCheckUtils]: 72: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,068 INFO L290 TraceCheckUtils]: 73: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,068 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,069 INFO L290 TraceCheckUtils]: 75: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,069 INFO L290 TraceCheckUtils]: 76: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,069 INFO L272 TraceCheckUtils]: 77: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,069 INFO L290 TraceCheckUtils]: 78: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,069 INFO L290 TraceCheckUtils]: 79: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,069 INFO L290 TraceCheckUtils]: 80: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,070 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,070 INFO L272 TraceCheckUtils]: 82: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,070 INFO L290 TraceCheckUtils]: 83: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,070 INFO L290 TraceCheckUtils]: 84: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,070 INFO L290 TraceCheckUtils]: 85: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,071 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,071 INFO L272 TraceCheckUtils]: 87: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,071 INFO L290 TraceCheckUtils]: 88: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:38:34,071 INFO L290 TraceCheckUtils]: 89: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:38:34,072 INFO L290 TraceCheckUtils]: 90: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:38:34,072 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {26896#true} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #106#return; {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,072 INFO L272 TraceCheckUtils]: 92: Hoare triple {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:38:34,073 INFO L290 TraceCheckUtils]: 93: Hoare triple {26896#true} ~cond := #in~cond; {27020#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:38:34,073 INFO L290 TraceCheckUtils]: 94: Hoare triple {27020#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:38:34,073 INFO L290 TraceCheckUtils]: 95: Hoare triple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:38:34,074 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} {26989#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #108#return; {27193#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,075 INFO L290 TraceCheckUtils]: 97: Hoare triple {27193#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {27197#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,078 INFO L290 TraceCheckUtils]: 98: Hoare triple {27197#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= (* main_~v~0 2) main_~c~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,078 INFO L290 TraceCheckUtils]: 99: Hoare triple {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} assume !false; {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,079 INFO L290 TraceCheckUtils]: 100: Hoare triple {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} is VALID [2022-04-08 12:38:34,081 INFO L290 TraceCheckUtils]: 101: Hoare triple {27201#(and (= main_~r~0 0) (= (+ (* (- 1) main_~c~0) main_~x~0) (* main_~b~0 main_~k~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (not (<= main_~x~0 (* main_~c~0 2))) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {27211#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} is VALID [2022-04-08 12:38:34,081 INFO L290 TraceCheckUtils]: 102: Hoare triple {27211#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} assume !false; {27211#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} is VALID [2022-04-08 12:38:34,082 INFO L290 TraceCheckUtils]: 103: Hoare triple {27211#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1) (= (+ (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~b~0) main_~x~0))} assume !(0 != ~b~0); {27218#(and (= main_~p~0 0) (= (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~x~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1))} is VALID [2022-04-08 12:38:34,085 INFO L272 TraceCheckUtils]: 104: Hoare triple {27218#(and (= main_~p~0 0) (= (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) main_~x~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (< main_~x~0 (* (* main_~y~0 (div (* (- 1) main_~s~0) main_~r~0)) 2)) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {27222#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:38:34,085 INFO L290 TraceCheckUtils]: 105: Hoare triple {27222#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {27226#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:38:34,085 INFO L290 TraceCheckUtils]: 106: Hoare triple {27226#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {26897#false} is VALID [2022-04-08 12:38:34,085 INFO L290 TraceCheckUtils]: 107: Hoare triple {26897#false} assume !false; {26897#false} is VALID [2022-04-08 12:38:34,086 INFO L134 CoverageAnalysis]: Checked inductivity of 334 backedges. 57 proven. 33 refuted. 0 times theorem prover too weak. 244 trivial. 0 not checked. [2022-04-08 12:38:34,086 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:38:52,465 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:40:38,619 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:42:14,057 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:42:54,604 INFO L290 TraceCheckUtils]: 107: Hoare triple {26897#false} assume !false; {26897#false} is VALID [2022-04-08 12:42:54,604 INFO L290 TraceCheckUtils]: 106: Hoare triple {27226#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {26897#false} is VALID [2022-04-08 12:42:54,605 INFO L290 TraceCheckUtils]: 105: Hoare triple {27222#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {27226#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:42:54,606 INFO L272 TraceCheckUtils]: 104: Hoare triple {27242#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {27222#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:42:54,606 INFO L290 TraceCheckUtils]: 103: Hoare triple {27246#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {27242#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:42:54,606 INFO L290 TraceCheckUtils]: 102: Hoare triple {27246#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {27246#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 12:42:54,740 INFO L290 TraceCheckUtils]: 101: Hoare triple {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {27246#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 12:42:54,740 INFO L290 TraceCheckUtils]: 100: Hoare triple {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:42:54,741 INFO L290 TraceCheckUtils]: 99: Hoare triple {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:42:54,827 INFO L290 TraceCheckUtils]: 98: Hoare triple {27263#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {27253#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:42:54,827 INFO L290 TraceCheckUtils]: 97: Hoare triple {27267#(or (<= (* main_~v~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {27263#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:42:56,830 WARN L284 TraceCheckUtils]: 96: Hoare quadruple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #108#return; {27267#(or (<= (* main_~v~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is UNKNOWN [2022-04-08 12:42:56,831 INFO L290 TraceCheckUtils]: 95: Hoare triple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:42:56,831 INFO L290 TraceCheckUtils]: 94: Hoare triple {27281#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:42:56,832 INFO L290 TraceCheckUtils]: 93: Hoare triple {26896#true} ~cond := #in~cond; {27281#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:42:56,832 INFO L272 TraceCheckUtils]: 92: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,833 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #106#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,833 INFO L290 TraceCheckUtils]: 90: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,833 INFO L290 TraceCheckUtils]: 89: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,833 INFO L290 TraceCheckUtils]: 88: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,833 INFO L272 TraceCheckUtils]: 87: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,834 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #104#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,834 INFO L290 TraceCheckUtils]: 85: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,834 INFO L290 TraceCheckUtils]: 84: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,834 INFO L290 TraceCheckUtils]: 83: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,834 INFO L272 TraceCheckUtils]: 82: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,835 INFO L284 TraceCheckUtils]: 81: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #102#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,836 INFO L290 TraceCheckUtils]: 80: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,836 INFO L290 TraceCheckUtils]: 79: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,836 INFO L290 TraceCheckUtils]: 78: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,836 INFO L272 TraceCheckUtils]: 77: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,837 INFO L290 TraceCheckUtils]: 76: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,837 INFO L290 TraceCheckUtils]: 75: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,838 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #108#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,839 INFO L290 TraceCheckUtils]: 73: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,839 INFO L290 TraceCheckUtils]: 72: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,839 INFO L290 TraceCheckUtils]: 71: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,840 INFO L272 TraceCheckUtils]: 70: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,844 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #106#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,844 INFO L290 TraceCheckUtils]: 68: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,844 INFO L290 TraceCheckUtils]: 67: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,844 INFO L290 TraceCheckUtils]: 66: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,844 INFO L272 TraceCheckUtils]: 65: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,845 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #104#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,845 INFO L290 TraceCheckUtils]: 63: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,845 INFO L290 TraceCheckUtils]: 62: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,845 INFO L290 TraceCheckUtils]: 61: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,845 INFO L272 TraceCheckUtils]: 60: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,846 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #102#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,846 INFO L290 TraceCheckUtils]: 58: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,846 INFO L290 TraceCheckUtils]: 57: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,846 INFO L290 TraceCheckUtils]: 56: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,847 INFO L272 TraceCheckUtils]: 55: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,847 INFO L290 TraceCheckUtils]: 54: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,848 INFO L290 TraceCheckUtils]: 53: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,849 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #108#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,849 INFO L290 TraceCheckUtils]: 51: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,849 INFO L290 TraceCheckUtils]: 50: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,849 INFO L290 TraceCheckUtils]: 49: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,849 INFO L272 TraceCheckUtils]: 48: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,850 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {26896#true} {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #106#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,850 INFO L290 TraceCheckUtils]: 46: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,850 INFO L290 TraceCheckUtils]: 45: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,851 INFO L290 TraceCheckUtils]: 44: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,851 INFO L272 TraceCheckUtils]: 43: Hoare triple {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,852 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #104#return; {27271#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,852 INFO L290 TraceCheckUtils]: 41: Hoare triple {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:42:56,853 INFO L290 TraceCheckUtils]: 40: Hoare triple {27281#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {27024#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:42:56,853 INFO L290 TraceCheckUtils]: 39: Hoare triple {26896#true} ~cond := #in~cond; {27281#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:42:56,853 INFO L272 TraceCheckUtils]: 38: Hoare triple {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,854 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {26896#true} {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} #102#return; {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,854 INFO L290 TraceCheckUtils]: 36: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,854 INFO L290 TraceCheckUtils]: 35: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,854 INFO L290 TraceCheckUtils]: 34: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,854 INFO L272 TraceCheckUtils]: 33: Hoare triple {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,855 INFO L290 TraceCheckUtils]: 32: Hoare triple {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,856 INFO L290 TraceCheckUtils]: 31: Hoare triple {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,856 INFO L290 TraceCheckUtils]: 30: Hoare triple {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} assume !false; {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,857 INFO L290 TraceCheckUtils]: 29: Hoare triple {27475#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27435#(or (not (= (mod main_~c~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ (* (- 1) main_~q~0 (+ main_~k~0 (div main_~c~0 main_~b~0))) main_~p~0)) main_~b~0 (* (+ main_~r~0 (* (- 1) (* main_~s~0 (+ main_~k~0 (div main_~c~0 main_~b~0))))) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= main_~c~0 0))} is VALID [2022-04-08 12:42:56,858 INFO L290 TraceCheckUtils]: 28: Hoare triple {27475#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {27475#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:42:56,860 INFO L290 TraceCheckUtils]: 27: Hoare triple {26896#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27475#(or (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~a~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) main_~b~0 (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:42:56,860 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {26896#true} {26896#true} #100#return; {26896#true} is VALID [2022-04-08 12:42:56,860 INFO L290 TraceCheckUtils]: 25: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,860 INFO L290 TraceCheckUtils]: 24: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,860 INFO L290 TraceCheckUtils]: 23: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,860 INFO L272 TraceCheckUtils]: 22: Hoare triple {26896#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,860 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26896#true} {26896#true} #98#return; {26896#true} is VALID [2022-04-08 12:42:56,860 INFO L290 TraceCheckUtils]: 20: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,860 INFO L290 TraceCheckUtils]: 19: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,860 INFO L290 TraceCheckUtils]: 18: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,861 INFO L272 TraceCheckUtils]: 17: Hoare triple {26896#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,861 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {26896#true} {26896#true} #96#return; {26896#true} is VALID [2022-04-08 12:42:56,861 INFO L290 TraceCheckUtils]: 15: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,861 INFO L290 TraceCheckUtils]: 14: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,861 INFO L290 TraceCheckUtils]: 13: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,861 INFO L272 TraceCheckUtils]: 12: Hoare triple {26896#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,861 INFO L290 TraceCheckUtils]: 11: Hoare triple {26896#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {26896#true} is VALID [2022-04-08 12:42:56,861 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26896#true} {26896#true} #94#return; {26896#true} is VALID [2022-04-08 12:42:56,861 INFO L290 TraceCheckUtils]: 9: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,861 INFO L290 TraceCheckUtils]: 8: Hoare triple {26896#true} assume !(0 == ~cond); {26896#true} is VALID [2022-04-08 12:42:56,862 INFO L290 TraceCheckUtils]: 7: Hoare triple {26896#true} ~cond := #in~cond; {26896#true} is VALID [2022-04-08 12:42:56,862 INFO L272 TraceCheckUtils]: 6: Hoare triple {26896#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {26896#true} is VALID [2022-04-08 12:42:56,862 INFO L290 TraceCheckUtils]: 5: Hoare triple {26896#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {26896#true} is VALID [2022-04-08 12:42:56,862 INFO L272 TraceCheckUtils]: 4: Hoare triple {26896#true} call #t~ret6 := main(); {26896#true} is VALID [2022-04-08 12:42:56,862 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26896#true} {26896#true} #112#return; {26896#true} is VALID [2022-04-08 12:42:56,862 INFO L290 TraceCheckUtils]: 2: Hoare triple {26896#true} assume true; {26896#true} is VALID [2022-04-08 12:42:56,862 INFO L290 TraceCheckUtils]: 1: Hoare triple {26896#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(11, 2);call #Ultimate.allocInit(12, 3); {26896#true} is VALID [2022-04-08 12:42:56,862 INFO L272 TraceCheckUtils]: 0: Hoare triple {26896#true} call ULTIMATE.init(); {26896#true} is VALID [2022-04-08 12:42:56,863 INFO L134 CoverageAnalysis]: Checked inductivity of 334 backedges. 61 proven. 35 refuted. 0 times theorem prover too weak. 238 trivial. 0 not checked. [2022-04-08 12:42:56,863 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:42:56,863 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1989038899] [2022-04-08 12:42:56,863 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:42:56,863 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [526392230] [2022-04-08 12:42:56,863 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [526392230] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:42:56,864 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:42:56,864 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-08 12:42:56,864 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:42:56,864 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [293671187] [2022-04-08 12:42:56,864 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [293671187] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:42:56,864 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:42:56,864 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-08 12:42:56,864 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1930749817] [2022-04-08 12:42:56,864 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:42:56,865 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) Word has length 108 [2022-04-08 12:42:56,865 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:42:56,865 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 12:42:56,934 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:42:56,935 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-08 12:42:56,935 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:42:56,935 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-08 12:42:56,935 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=75, Invalid=387, Unknown=0, NotChecked=0, Total=462 [2022-04-08 12:42:56,936 INFO L87 Difference]: Start difference. First operand 454 states and 629 transitions. Second operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 12:43:00,806 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:43:00,806 INFO L93 Difference]: Finished difference Result 530 states and 735 transitions. [2022-04-08 12:43:00,806 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-08 12:43:00,807 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) Word has length 108 [2022-04-08 12:43:00,807 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:43:00,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 12:43:00,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 119 transitions. [2022-04-08 12:43:00,808 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 12:43:00,809 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 119 transitions. [2022-04-08 12:43:00,810 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 119 transitions. [2022-04-08 12:43:00,981 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 12:43:01,000 INFO L225 Difference]: With dead ends: 530 [2022-04-08 12:43:01,000 INFO L226 Difference]: Without dead ends: 527 [2022-04-08 12:43:01,001 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 222 GetRequests, 193 SyntacticMatches, 2 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 117 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=143, Invalid=669, Unknown=0, NotChecked=0, Total=812 [2022-04-08 12:43:01,001 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 47 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 601 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 302 SdHoareTripleChecker+Invalid, 644 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 601 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-08 12:43:01,001 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 302 Invalid, 644 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 601 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-08 12:43:01,002 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 527 states. [2022-04-08 12:43:02,347 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 527 to 448. [2022-04-08 12:43:02,348 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:43:02,348 INFO L82 GeneralOperation]: Start isEquivalent. First operand 527 states. Second operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) [2022-04-08 12:43:02,349 INFO L74 IsIncluded]: Start isIncluded. First operand 527 states. Second operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) [2022-04-08 12:43:02,349 INFO L87 Difference]: Start difference. First operand 527 states. Second operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) [2022-04-08 12:43:02,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:43:02,366 INFO L93 Difference]: Finished difference Result 527 states and 731 transitions. [2022-04-08 12:43:02,366 INFO L276 IsEmpty]: Start isEmpty. Operand 527 states and 731 transitions. [2022-04-08 12:43:02,368 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:43:02,368 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:43:02,369 INFO L74 IsIncluded]: Start isIncluded. First operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) Second operand 527 states. [2022-04-08 12:43:02,369 INFO L87 Difference]: Start difference. First operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) Second operand 527 states. [2022-04-08 12:43:02,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:43:02,387 INFO L93 Difference]: Finished difference Result 527 states and 731 transitions. [2022-04-08 12:43:02,387 INFO L276 IsEmpty]: Start isEmpty. Operand 527 states and 731 transitions. [2022-04-08 12:43:02,388 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:43:02,388 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:43:02,388 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:43:02,388 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:43:02,389 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 448 states, 260 states have (on average 1.1923076923076923) internal successors, (310), 261 states have internal predecessors, (310), 155 states have call successors, (155), 33 states have call predecessors, (155), 32 states have return successors, (153), 153 states have call predecessors, (153), 153 states have call successors, (153) [2022-04-08 12:43:02,406 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 448 states to 448 states and 618 transitions. [2022-04-08 12:43:02,406 INFO L78 Accepts]: Start accepts. Automaton has 448 states and 618 transitions. Word has length 108 [2022-04-08 12:43:02,406 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:43:02,406 INFO L478 AbstractCegarLoop]: Abstraction has 448 states and 618 transitions. [2022-04-08 12:43:02,406 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 11 states have internal predecessors, (30), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (11), 3 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-08 12:43:02,407 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 448 states and 618 transitions. [2022-04-08 12:43:04,247 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 618 edges. 618 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:43:04,247 INFO L276 IsEmpty]: Start isEmpty. Operand 448 states and 618 transitions. [2022-04-08 12:43:04,248 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-08 12:43:04,248 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:43:04,248 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 6, 4, 4, 4, 4, 4, 3, 3, 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 12:43:04,268 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 12:43:04,448 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 12:43:04,449 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:43:04,449 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:43:04,449 INFO L85 PathProgramCache]: Analyzing trace with hash 826422219, now seen corresponding path program 9 times [2022-04-08 12:43:04,449 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:43:04,449 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [59357577] [2022-04-08 12:43:04,449 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:43:04,450 INFO L85 PathProgramCache]: Analyzing trace with hash 826422219, now seen corresponding path program 10 times [2022-04-08 12:43:04,450 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:43:04,450 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [171936985] [2022-04-08 12:43:04,450 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:43:04,450 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:43:04,462 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:43:04,462 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1403205328] [2022-04-08 12:43:04,462 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:43:04,462 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:43:04,462 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:43:04,463 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 12:43:04,463 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 12:43:04,526 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:43:04,526 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:43:04,527 INFO L263 TraceCheckSpWp]: Trace formula consists of 257 conjuncts, 104 conjunts are in the unsatisfiable core [2022-04-08 12:43:04,546 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:43:04,547 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:43:06,755 INFO L272 TraceCheckUtils]: 0: Hoare triple {30589#true} call ULTIMATE.init(); {30589#true} is VALID [2022-04-08 12:43:06,755 INFO L290 TraceCheckUtils]: 1: Hoare triple {30589#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(11, 2);call #Ultimate.allocInit(12, 3); {30589#true} is VALID [2022-04-08 12:43:06,755 INFO L290 TraceCheckUtils]: 2: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:43:06,755 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30589#true} {30589#true} #112#return; {30589#true} is VALID [2022-04-08 12:43:06,755 INFO L272 TraceCheckUtils]: 4: Hoare triple {30589#true} call #t~ret6 := main(); {30589#true} is VALID [2022-04-08 12:43:06,755 INFO L290 TraceCheckUtils]: 5: Hoare triple {30589#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {30589#true} is VALID [2022-04-08 12:43:06,755 INFO L272 TraceCheckUtils]: 6: Hoare triple {30589#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,755 INFO L290 TraceCheckUtils]: 7: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L290 TraceCheckUtils]: 8: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L290 TraceCheckUtils]: 9: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30589#true} {30589#true} #94#return; {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L290 TraceCheckUtils]: 11: Hoare triple {30589#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L272 TraceCheckUtils]: 12: Hoare triple {30589#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L290 TraceCheckUtils]: 13: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L290 TraceCheckUtils]: 14: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L290 TraceCheckUtils]: 15: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {30589#true} {30589#true} #96#return; {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L272 TraceCheckUtils]: 17: Hoare triple {30589#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L290 TraceCheckUtils]: 18: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L290 TraceCheckUtils]: 19: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L290 TraceCheckUtils]: 20: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:43:06,756 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {30589#true} {30589#true} #98#return; {30589#true} is VALID [2022-04-08 12:43:06,757 INFO L272 TraceCheckUtils]: 22: Hoare triple {30589#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,757 INFO L290 TraceCheckUtils]: 23: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:43:06,757 INFO L290 TraceCheckUtils]: 24: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:43:06,757 INFO L290 TraceCheckUtils]: 25: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:43:06,757 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {30589#true} {30589#true} #100#return; {30589#true} is VALID [2022-04-08 12:43:06,757 INFO L290 TraceCheckUtils]: 27: Hoare triple {30589#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {30675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 12:43:06,758 INFO L290 TraceCheckUtils]: 28: Hoare triple {30675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {30675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-08 12:43:06,758 INFO L290 TraceCheckUtils]: 29: Hoare triple {30675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:43:06,758 INFO L290 TraceCheckUtils]: 30: Hoare triple {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !false; {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:43:06,759 INFO L290 TraceCheckUtils]: 31: Hoare triple {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:43:06,759 INFO L290 TraceCheckUtils]: 32: Hoare triple {30682#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30692#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:43:06,760 INFO L290 TraceCheckUtils]: 33: Hoare triple {30692#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {30692#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:43:06,760 INFO L290 TraceCheckUtils]: 34: Hoare triple {30692#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30699#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:43:06,760 INFO L290 TraceCheckUtils]: 35: Hoare triple {30699#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !false; {30699#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-08 12:43:06,761 INFO L290 TraceCheckUtils]: 36: Hoare triple {30699#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30706#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:43:06,761 INFO L290 TraceCheckUtils]: 37: Hoare triple {30706#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !false; {30706#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-08 12:43:06,761 INFO L272 TraceCheckUtils]: 38: Hoare triple {30706#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,762 INFO L290 TraceCheckUtils]: 39: Hoare triple {30589#true} ~cond := #in~cond; {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:43:06,762 INFO L290 TraceCheckUtils]: 40: Hoare triple {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:43:06,762 INFO L290 TraceCheckUtils]: 41: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:43:06,763 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {30706#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {30727#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:43:06,763 INFO L272 TraceCheckUtils]: 43: Hoare triple {30727#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,763 INFO L290 TraceCheckUtils]: 44: Hoare triple {30589#true} ~cond := #in~cond; {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:43:06,764 INFO L290 TraceCheckUtils]: 45: Hoare triple {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:43:06,764 INFO L290 TraceCheckUtils]: 46: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:43:06,765 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {30727#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:43:06,765 INFO L272 TraceCheckUtils]: 48: Hoare triple {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,765 INFO L290 TraceCheckUtils]: 49: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:43:06,765 INFO L290 TraceCheckUtils]: 50: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:43:06,765 INFO L290 TraceCheckUtils]: 51: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:43:06,766 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {30589#true} {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #106#return; {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:43:06,766 INFO L272 TraceCheckUtils]: 53: Hoare triple {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,766 INFO L290 TraceCheckUtils]: 54: Hoare triple {30589#true} ~cond := #in~cond; {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:43:06,767 INFO L290 TraceCheckUtils]: 55: Hoare triple {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:43:06,767 INFO L290 TraceCheckUtils]: 56: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:43:06,768 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #108#return; {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:43:06,768 INFO L290 TraceCheckUtils]: 58: Hoare triple {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:43:06,769 INFO L290 TraceCheckUtils]: 59: Hoare triple {30743#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:43:06,770 INFO L290 TraceCheckUtils]: 60: Hoare triple {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:43:06,770 INFO L290 TraceCheckUtils]: 61: Hoare triple {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:43:06,772 INFO L290 TraceCheckUtils]: 62: Hoare triple {30780#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30790#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 12:43:06,773 INFO L290 TraceCheckUtils]: 63: Hoare triple {30790#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {30790#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 12:43:06,773 INFO L290 TraceCheckUtils]: 64: Hoare triple {30790#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30797#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 12:43:06,774 INFO L290 TraceCheckUtils]: 65: Hoare triple {30797#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {30797#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 12:43:06,774 INFO L290 TraceCheckUtils]: 66: Hoare triple {30797#(and (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30804#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 12:43:06,775 INFO L290 TraceCheckUtils]: 67: Hoare triple {30804#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {30804#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 12:43:06,775 INFO L272 TraceCheckUtils]: 68: Hoare triple {30804#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,775 INFO L290 TraceCheckUtils]: 69: Hoare triple {30589#true} ~cond := #in~cond; {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:43:06,775 INFO L290 TraceCheckUtils]: 70: Hoare triple {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:43:06,776 INFO L290 TraceCheckUtils]: 71: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:43:06,777 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {30804#(and (= main_~b~0 main_~v~0) (= (+ (* main_~q~0 main_~x~0) (* (- 1) main_~a~0) main_~y~0 (* main_~p~0 main_~x~0)) main_~b~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~x~0 (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (* main_~p~0 main_~x~0) (+ (* main_~p~0 main_~x~0 1) main_~a~0 (* (- 1) (* main_~p~0 main_~x~0)))) (= (+ main_~q~0 main_~p~0) 0))} #102#return; {30823#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 12:43:06,777 INFO L272 TraceCheckUtils]: 73: Hoare triple {30823#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,778 INFO L290 TraceCheckUtils]: 74: Hoare triple {30589#true} ~cond := #in~cond; {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:43:06,778 INFO L290 TraceCheckUtils]: 75: Hoare triple {30716#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:43:06,778 INFO L290 TraceCheckUtils]: 76: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:43:06,780 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {30823#(and (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= main_~d~0 1) (= (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~b~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0))} #104#return; {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:43:06,780 INFO L272 TraceCheckUtils]: 78: Hoare triple {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,780 INFO L290 TraceCheckUtils]: 79: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:43:06,781 INFO L290 TraceCheckUtils]: 80: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:43:06,781 INFO L290 TraceCheckUtils]: 81: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:43:06,781 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {30589#true} {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} #106#return; {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:43:06,781 INFO L272 TraceCheckUtils]: 83: Hoare triple {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,782 INFO L290 TraceCheckUtils]: 84: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:43:06,782 INFO L290 TraceCheckUtils]: 85: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:43:06,782 INFO L290 TraceCheckUtils]: 86: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:43:06,782 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {30589#true} {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} #108#return; {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:43:06,783 INFO L290 TraceCheckUtils]: 88: Hoare triple {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= 2 * ~v~0); {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:43:06,784 INFO L290 TraceCheckUtils]: 89: Hoare triple {30839#(and (= main_~r~0 0) (= (+ main_~c~0 main_~v~0) (+ (* main_~q~0 main_~x~0) main_~y~0 (* main_~p~0 main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~d~0 1) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 12:43:06,784 INFO L290 TraceCheckUtils]: 90: Hoare triple {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} assume !false; {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 12:43:06,785 INFO L290 TraceCheckUtils]: 91: Hoare triple {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} assume !(~c~0 >= ~b~0); {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-08 12:43:06,789 INFO L290 TraceCheckUtils]: 92: Hoare triple {30876#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~c~0 (+ (* main_~x~0 2) (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (- 1) (* main_~q~0 main_~x~0)))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~x~0 (* main_~y~0 main_~s~0))) (= main_~k~0 1) (= (+ main_~q~0 main_~p~0) 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 12:43:06,789 INFO L290 TraceCheckUtils]: 93: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} assume !false; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 12:43:06,790 INFO L290 TraceCheckUtils]: 94: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 12:43:06,790 INFO L290 TraceCheckUtils]: 95: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} assume !false; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 12:43:06,791 INFO L290 TraceCheckUtils]: 96: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 12:43:06,791 INFO L290 TraceCheckUtils]: 97: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} assume !false; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 12:43:06,791 INFO L272 TraceCheckUtils]: 98: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:43:06,791 INFO L290 TraceCheckUtils]: 99: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:43:06,791 INFO L290 TraceCheckUtils]: 100: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:43:06,791 INFO L290 TraceCheckUtils]: 101: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:43:06,792 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {30589#true} {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} #102#return; {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-08 12:43:06,794 INFO L272 TraceCheckUtils]: 103: Hoare triple {30886#(and (= (+ main_~y~0 (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (+ main_~y~0 main_~x~0)) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) (* (* (div (- main_~q~0) 2) (- 1)) main_~x~0)) (* (- 1) (* (div (- main_~q~0) 2) main_~x~0)) (* (- 1) main_~y~0))) (= (mod main_~q~0 2) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30920#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:43:06,794 INFO L290 TraceCheckUtils]: 104: Hoare triple {30920#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30924#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:43:06,795 INFO L290 TraceCheckUtils]: 105: Hoare triple {30924#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30590#false} is VALID [2022-04-08 12:43:06,795 INFO L290 TraceCheckUtils]: 106: Hoare triple {30590#false} assume !false; {30590#false} is VALID [2022-04-08 12:43:06,795 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 22 proven. 114 refuted. 0 times theorem prover too weak. 108 trivial. 0 not checked. [2022-04-08 12:43:06,796 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:44:09,317 INFO L290 TraceCheckUtils]: 106: Hoare triple {30590#false} assume !false; {30590#false} is VALID [2022-04-08 12:44:09,318 INFO L290 TraceCheckUtils]: 105: Hoare triple {30924#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30590#false} is VALID [2022-04-08 12:44:09,318 INFO L290 TraceCheckUtils]: 104: Hoare triple {30920#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30924#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:44:09,319 INFO L272 TraceCheckUtils]: 103: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30920#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:44:09,319 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {30589#true} {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:44:09,319 INFO L290 TraceCheckUtils]: 101: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:09,319 INFO L290 TraceCheckUtils]: 100: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:44:09,319 INFO L290 TraceCheckUtils]: 99: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:44:09,320 INFO L272 TraceCheckUtils]: 98: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:09,320 INFO L290 TraceCheckUtils]: 97: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:44:09,320 INFO L290 TraceCheckUtils]: 96: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:44:09,321 INFO L290 TraceCheckUtils]: 95: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:44:09,321 INFO L290 TraceCheckUtils]: 94: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:44:09,321 INFO L290 TraceCheckUtils]: 93: Hoare triple {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-08 12:44:11,324 WARN L290 TraceCheckUtils]: 92: Hoare triple {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30940#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-08 12:44:11,325 INFO L290 TraceCheckUtils]: 91: Hoare triple {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 12:44:11,325 INFO L290 TraceCheckUtils]: 90: Hoare triple {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !false; {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 12:44:11,914 INFO L290 TraceCheckUtils]: 89: Hoare triple {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30974#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-08 12:44:11,915 INFO L290 TraceCheckUtils]: 88: Hoare triple {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:44:11,916 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {30589#true} {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #108#return; {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:44:11,916 INFO L290 TraceCheckUtils]: 86: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:11,916 INFO L290 TraceCheckUtils]: 85: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:44:11,916 INFO L290 TraceCheckUtils]: 84: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:44:11,916 INFO L272 TraceCheckUtils]: 83: Hoare triple {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,917 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {30589#true} {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #106#return; {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:44:11,917 INFO L290 TraceCheckUtils]: 81: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:11,917 INFO L290 TraceCheckUtils]: 80: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:44:11,917 INFO L290 TraceCheckUtils]: 79: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:44:11,917 INFO L272 TraceCheckUtils]: 78: Hoare triple {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,919 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {31021#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {30984#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:44:11,919 INFO L290 TraceCheckUtils]: 76: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:44:11,920 INFO L290 TraceCheckUtils]: 75: Hoare triple {31031#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:44:11,920 INFO L290 TraceCheckUtils]: 74: Hoare triple {30589#true} ~cond := #in~cond; {31031#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:44:11,920 INFO L272 TraceCheckUtils]: 73: Hoare triple {31021#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,921 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} {31038#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {31021#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:44:11,921 INFO L290 TraceCheckUtils]: 71: Hoare triple {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:44:11,922 INFO L290 TraceCheckUtils]: 70: Hoare triple {31031#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30720#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:44:11,922 INFO L290 TraceCheckUtils]: 69: Hoare triple {30589#true} ~cond := #in~cond; {31031#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:44:11,922 INFO L272 TraceCheckUtils]: 68: Hoare triple {31038#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,923 INFO L290 TraceCheckUtils]: 67: Hoare triple {31038#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {31038#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:44:11,923 INFO L290 TraceCheckUtils]: 66: Hoare triple {31057#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31038#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-08 12:44:11,924 INFO L290 TraceCheckUtils]: 65: Hoare triple {31057#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {31057#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:44:11,925 INFO L290 TraceCheckUtils]: 64: Hoare triple {30589#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31057#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:44:11,925 INFO L290 TraceCheckUtils]: 63: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 12:44:11,925 INFO L290 TraceCheckUtils]: 62: Hoare triple {30589#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L290 TraceCheckUtils]: 61: Hoare triple {30589#true} assume !(~c~0 >= ~b~0); {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L290 TraceCheckUtils]: 60: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L290 TraceCheckUtils]: 59: Hoare triple {30589#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L290 TraceCheckUtils]: 58: Hoare triple {30589#true} assume !(~c~0 >= 2 * ~v~0); {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {30589#true} {30589#true} #108#return; {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L290 TraceCheckUtils]: 56: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L290 TraceCheckUtils]: 55: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L290 TraceCheckUtils]: 54: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L272 TraceCheckUtils]: 53: Hoare triple {30589#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {30589#true} {30589#true} #106#return; {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L290 TraceCheckUtils]: 51: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L290 TraceCheckUtils]: 50: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L290 TraceCheckUtils]: 49: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:44:11,926 INFO L272 TraceCheckUtils]: 48: Hoare triple {30589#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,927 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {30589#true} {30589#true} #104#return; {30589#true} is VALID [2022-04-08 12:44:11,927 INFO L290 TraceCheckUtils]: 46: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:11,927 INFO L290 TraceCheckUtils]: 45: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:44:11,927 INFO L290 TraceCheckUtils]: 44: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:44:11,927 INFO L272 TraceCheckUtils]: 43: Hoare triple {30589#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,927 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {30589#true} {30589#true} #102#return; {30589#true} is VALID [2022-04-08 12:44:11,927 INFO L290 TraceCheckUtils]: 41: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:11,927 INFO L290 TraceCheckUtils]: 40: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:44:11,927 INFO L290 TraceCheckUtils]: 39: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:44:11,928 INFO L272 TraceCheckUtils]: 38: Hoare triple {30589#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,928 INFO L290 TraceCheckUtils]: 37: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 12:44:11,928 INFO L290 TraceCheckUtils]: 36: Hoare triple {30589#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30589#true} is VALID [2022-04-08 12:44:11,928 INFO L290 TraceCheckUtils]: 35: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 12:44:11,928 INFO L290 TraceCheckUtils]: 34: Hoare triple {30589#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30589#true} is VALID [2022-04-08 12:44:11,928 INFO L290 TraceCheckUtils]: 33: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 12:44:11,928 INFO L290 TraceCheckUtils]: 32: Hoare triple {30589#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30589#true} is VALID [2022-04-08 12:44:11,928 INFO L290 TraceCheckUtils]: 31: Hoare triple {30589#true} assume !(~c~0 >= ~b~0); {30589#true} is VALID [2022-04-08 12:44:11,928 INFO L290 TraceCheckUtils]: 30: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 12:44:11,928 INFO L290 TraceCheckUtils]: 29: Hoare triple {30589#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30589#true} is VALID [2022-04-08 12:44:11,929 INFO L290 TraceCheckUtils]: 28: Hoare triple {30589#true} assume !false; {30589#true} is VALID [2022-04-08 12:44:11,929 INFO L290 TraceCheckUtils]: 27: Hoare triple {30589#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {30589#true} is VALID [2022-04-08 12:44:11,929 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {30589#true} {30589#true} #100#return; {30589#true} is VALID [2022-04-08 12:44:11,929 INFO L290 TraceCheckUtils]: 25: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:11,929 INFO L290 TraceCheckUtils]: 24: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:44:11,929 INFO L290 TraceCheckUtils]: 23: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:44:11,929 INFO L272 TraceCheckUtils]: 22: Hoare triple {30589#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,929 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {30589#true} {30589#true} #98#return; {30589#true} is VALID [2022-04-08 12:44:11,929 INFO L290 TraceCheckUtils]: 20: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:11,929 INFO L290 TraceCheckUtils]: 19: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:44:11,930 INFO L290 TraceCheckUtils]: 18: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:44:11,930 INFO L272 TraceCheckUtils]: 17: Hoare triple {30589#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,930 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {30589#true} {30589#true} #96#return; {30589#true} is VALID [2022-04-08 12:44:11,930 INFO L290 TraceCheckUtils]: 15: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:11,930 INFO L290 TraceCheckUtils]: 14: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:44:11,930 INFO L290 TraceCheckUtils]: 13: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:44:11,930 INFO L272 TraceCheckUtils]: 12: Hoare triple {30589#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,930 INFO L290 TraceCheckUtils]: 11: Hoare triple {30589#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {30589#true} is VALID [2022-04-08 12:44:11,930 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30589#true} {30589#true} #94#return; {30589#true} is VALID [2022-04-08 12:44:11,930 INFO L290 TraceCheckUtils]: 9: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:11,930 INFO L290 TraceCheckUtils]: 8: Hoare triple {30589#true} assume !(0 == ~cond); {30589#true} is VALID [2022-04-08 12:44:11,931 INFO L290 TraceCheckUtils]: 7: Hoare triple {30589#true} ~cond := #in~cond; {30589#true} is VALID [2022-04-08 12:44:11,931 INFO L272 TraceCheckUtils]: 6: Hoare triple {30589#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {30589#true} is VALID [2022-04-08 12:44:11,931 INFO L290 TraceCheckUtils]: 5: Hoare triple {30589#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {30589#true} is VALID [2022-04-08 12:44:11,931 INFO L272 TraceCheckUtils]: 4: Hoare triple {30589#true} call #t~ret6 := main(); {30589#true} is VALID [2022-04-08 12:44:11,931 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30589#true} {30589#true} #112#return; {30589#true} is VALID [2022-04-08 12:44:11,931 INFO L290 TraceCheckUtils]: 2: Hoare triple {30589#true} assume true; {30589#true} is VALID [2022-04-08 12:44:11,931 INFO L290 TraceCheckUtils]: 1: Hoare triple {30589#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(11, 2);call #Ultimate.allocInit(12, 3); {30589#true} is VALID [2022-04-08 12:44:11,931 INFO L272 TraceCheckUtils]: 0: Hoare triple {30589#true} call ULTIMATE.init(); {30589#true} is VALID [2022-04-08 12:44:11,931 INFO L134 CoverageAnalysis]: Checked inductivity of 244 backedges. 78 proven. 27 refuted. 0 times theorem prover too weak. 139 trivial. 0 not checked. [2022-04-08 12:44:11,932 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:44:11,932 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [171936985] [2022-04-08 12:44:11,932 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:44:11,932 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1403205328] [2022-04-08 12:44:11,932 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1403205328] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:44:11,932 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:44:11,932 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 12] total 28 [2022-04-08 12:44:11,932 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:44:11,932 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [59357577] [2022-04-08 12:44:11,932 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [59357577] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:44:11,932 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:44:11,933 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-08 12:44:11,933 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1676756136] [2022-04-08 12:44:11,933 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:44:11,933 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) Word has length 107 [2022-04-08 12:44:11,933 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:44:11,933 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-08 12:44:12,121 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:44:12,121 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-08 12:44:12,121 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:44:12,122 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-08 12:44:12,122 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=117, Invalid=639, Unknown=0, NotChecked=0, Total=756 [2022-04-08 12:44:12,122 INFO L87 Difference]: Start difference. First operand 448 states and 618 transitions. Second operand has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-08 12:44:18,801 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:44:18,801 INFO L93 Difference]: Finished difference Result 523 states and 710 transitions. [2022-04-08 12:44:18,801 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-08 12:44:18,802 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) Word has length 107 [2022-04-08 12:44:18,802 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:44:18,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-08 12:44:18,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 195 transitions. [2022-04-08 12:44:18,805 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-08 12:44:18,807 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 195 transitions. [2022-04-08 12:44:18,807 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 195 transitions. [2022-04-08 12:44:19,154 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:44:19,170 INFO L225 Difference]: With dead ends: 523 [2022-04-08 12:44:19,171 INFO L226 Difference]: Without dead ends: 521 [2022-04-08 12:44:19,171 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 219 GetRequests, 185 SyntacticMatches, 2 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 199 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=163, Invalid=959, Unknown=0, NotChecked=0, Total=1122 [2022-04-08 12:44:19,171 INFO L913 BasicCegarLoop]: 58 mSDtfsCounter, 75 mSDsluCounter, 486 mSDsCounter, 0 mSdLazyCounter, 1392 mSolverCounterSat, 55 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 104 SdHoareTripleChecker+Valid, 544 SdHoareTripleChecker+Invalid, 1447 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 55 IncrementalHoareTripleChecker+Valid, 1392 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-08 12:44:19,172 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [104 Valid, 544 Invalid, 1447 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [55 Valid, 1392 Invalid, 0 Unknown, 0 Unchecked, 2.2s Time] [2022-04-08 12:44:19,172 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 521 states. [2022-04-08 12:44:20,674 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 521 to 499. [2022-04-08 12:44:20,674 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:44:20,675 INFO L82 GeneralOperation]: Start isEquivalent. First operand 521 states. Second operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-08 12:44:20,675 INFO L74 IsIncluded]: Start isIncluded. First operand 521 states. Second operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-08 12:44:20,676 INFO L87 Difference]: Start difference. First operand 521 states. Second operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-08 12:44:20,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:44:20,693 INFO L93 Difference]: Finished difference Result 521 states and 708 transitions. [2022-04-08 12:44:20,693 INFO L276 IsEmpty]: Start isEmpty. Operand 521 states and 708 transitions. [2022-04-08 12:44:20,694 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:44:20,694 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:44:20,695 INFO L74 IsIncluded]: Start isIncluded. First operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) Second operand 521 states. [2022-04-08 12:44:20,696 INFO L87 Difference]: Start difference. First operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) Second operand 521 states. [2022-04-08 12:44:20,712 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:44:20,712 INFO L93 Difference]: Finished difference Result 521 states and 708 transitions. [2022-04-08 12:44:20,712 INFO L276 IsEmpty]: Start isEmpty. Operand 521 states and 708 transitions. [2022-04-08 12:44:20,714 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:44:20,714 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:44:20,714 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:44:20,714 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:44:20,715 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 499 states, 291 states have (on average 1.1890034364261168) internal successors, (346), 292 states have internal predecessors, (346), 171 states have call successors, (171), 37 states have call predecessors, (171), 36 states have return successors, (169), 169 states have call predecessors, (169), 169 states have call successors, (169) [2022-04-08 12:44:20,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 499 states to 499 states and 686 transitions. [2022-04-08 12:44:20,735 INFO L78 Accepts]: Start accepts. Automaton has 499 states and 686 transitions. Word has length 107 [2022-04-08 12:44:20,735 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:44:20,735 INFO L478 AbstractCegarLoop]: Abstraction has 499 states and 686 transitions. [2022-04-08 12:44:20,735 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 19 states have (on average 2.473684210526316) internal successors, (47), 18 states have internal predecessors, (47), 8 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 8 states have call successors, (14) [2022-04-08 12:44:20,735 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 499 states and 686 transitions. [2022-04-08 12:44:22,840 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 686 edges. 686 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:44:22,840 INFO L276 IsEmpty]: Start isEmpty. Operand 499 states and 686 transitions. [2022-04-08 12:44:22,841 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-08 12:44:22,841 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:44:22,841 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:44:22,857 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 12:44:23,041 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 12:44:23,042 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:44:23,042 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:44:23,042 INFO L85 PathProgramCache]: Analyzing trace with hash 1002671399, now seen corresponding path program 7 times [2022-04-08 12:44:23,042 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:44:23,042 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [859144198] [2022-04-08 12:44:23,043 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:44:23,043 INFO L85 PathProgramCache]: Analyzing trace with hash 1002671399, now seen corresponding path program 8 times [2022-04-08 12:44:23,043 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:44:23,043 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [727122108] [2022-04-08 12:44:23,043 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:44:23,043 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:44:23,054 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:44:23,054 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [536423866] [2022-04-08 12:44:23,054 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 12:44:23,054 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:44:23,054 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:44:23,055 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 12:44:23,061 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 12:44:23,115 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 12:44:23,116 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:44:23,117 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 68 conjunts are in the unsatisfiable core [2022-04-08 12:44:23,142 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:44:23,144 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:44:25,208 INFO L272 TraceCheckUtils]: 0: Hoare triple {34356#true} call ULTIMATE.init(); {34356#true} is VALID [2022-04-08 12:44:25,208 INFO L290 TraceCheckUtils]: 1: Hoare triple {34356#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(11, 2);call #Ultimate.allocInit(12, 3); {34356#true} is VALID [2022-04-08 12:44:25,208 INFO L290 TraceCheckUtils]: 2: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,208 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34356#true} {34356#true} #112#return; {34356#true} is VALID [2022-04-08 12:44:25,208 INFO L272 TraceCheckUtils]: 4: Hoare triple {34356#true} call #t~ret6 := main(); {34356#true} is VALID [2022-04-08 12:44:25,208 INFO L290 TraceCheckUtils]: 5: Hoare triple {34356#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {34356#true} is VALID [2022-04-08 12:44:25,208 INFO L272 TraceCheckUtils]: 6: Hoare triple {34356#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,208 INFO L290 TraceCheckUtils]: 7: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,208 INFO L290 TraceCheckUtils]: 8: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,208 INFO L290 TraceCheckUtils]: 9: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {34356#true} {34356#true} #94#return; {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L290 TraceCheckUtils]: 11: Hoare triple {34356#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L272 TraceCheckUtils]: 12: Hoare triple {34356#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L290 TraceCheckUtils]: 13: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L290 TraceCheckUtils]: 14: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L290 TraceCheckUtils]: 15: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {34356#true} {34356#true} #96#return; {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L272 TraceCheckUtils]: 17: Hoare triple {34356#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L290 TraceCheckUtils]: 18: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L290 TraceCheckUtils]: 19: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L290 TraceCheckUtils]: 20: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {34356#true} {34356#true} #98#return; {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L272 TraceCheckUtils]: 22: Hoare triple {34356#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,209 INFO L290 TraceCheckUtils]: 23: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,210 INFO L290 TraceCheckUtils]: 24: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,210 INFO L290 TraceCheckUtils]: 25: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,210 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {34356#true} {34356#true} #100#return; {34356#true} is VALID [2022-04-08 12:44:25,210 INFO L290 TraceCheckUtils]: 27: Hoare triple {34356#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {34442#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,210 INFO L290 TraceCheckUtils]: 28: Hoare triple {34442#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34442#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,211 INFO L290 TraceCheckUtils]: 29: Hoare triple {34442#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {34449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,211 INFO L290 TraceCheckUtils]: 30: Hoare triple {34449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,212 INFO L290 TraceCheckUtils]: 31: Hoare triple {34449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,212 INFO L290 TraceCheckUtils]: 32: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,212 INFO L272 TraceCheckUtils]: 33: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,212 INFO L290 TraceCheckUtils]: 34: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,212 INFO L290 TraceCheckUtils]: 35: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,212 INFO L290 TraceCheckUtils]: 36: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,213 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {34356#true} {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,213 INFO L272 TraceCheckUtils]: 38: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,213 INFO L290 TraceCheckUtils]: 39: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,213 INFO L290 TraceCheckUtils]: 40: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,213 INFO L290 TraceCheckUtils]: 41: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,214 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {34356#true} {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,214 INFO L272 TraceCheckUtils]: 43: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,214 INFO L290 TraceCheckUtils]: 44: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,214 INFO L290 TraceCheckUtils]: 45: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,214 INFO L290 TraceCheckUtils]: 46: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,216 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {34356#true} {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,216 INFO L272 TraceCheckUtils]: 48: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,216 INFO L290 TraceCheckUtils]: 49: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,216 INFO L290 TraceCheckUtils]: 50: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,216 INFO L290 TraceCheckUtils]: 51: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,217 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {34356#true} {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #108#return; {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,219 INFO L290 TraceCheckUtils]: 53: Hoare triple {34456#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,220 INFO L290 TraceCheckUtils]: 54: Hoare triple {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,220 INFO L272 TraceCheckUtils]: 55: Hoare triple {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,220 INFO L290 TraceCheckUtils]: 56: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,220 INFO L290 TraceCheckUtils]: 57: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,220 INFO L290 TraceCheckUtils]: 58: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,221 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {34356#true} {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,221 INFO L272 TraceCheckUtils]: 60: Hoare triple {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,221 INFO L290 TraceCheckUtils]: 61: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,221 INFO L290 TraceCheckUtils]: 62: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,222 INFO L290 TraceCheckUtils]: 63: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,223 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {34356#true} {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,223 INFO L272 TraceCheckUtils]: 65: Hoare triple {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,223 INFO L290 TraceCheckUtils]: 66: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,223 INFO L290 TraceCheckUtils]: 67: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,223 INFO L290 TraceCheckUtils]: 68: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,224 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {34356#true} {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,224 INFO L272 TraceCheckUtils]: 70: Hoare triple {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,225 INFO L290 TraceCheckUtils]: 71: Hoare triple {34356#true} ~cond := #in~cond; {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:44:25,225 INFO L290 TraceCheckUtils]: 72: Hoare triple {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:44:25,226 INFO L290 TraceCheckUtils]: 73: Hoare triple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:44:25,227 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} {34523#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #108#return; {34589#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,228 INFO L290 TraceCheckUtils]: 75: Hoare triple {34589#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {34589#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,230 INFO L290 TraceCheckUtils]: 76: Hoare triple {34589#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {34596#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,231 INFO L290 TraceCheckUtils]: 77: Hoare triple {34596#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34596#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,232 INFO L290 TraceCheckUtils]: 78: Hoare triple {34596#(and (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,232 INFO L290 TraceCheckUtils]: 79: Hoare triple {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,233 INFO L272 TraceCheckUtils]: 80: Hoare triple {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,233 INFO L290 TraceCheckUtils]: 81: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,233 INFO L290 TraceCheckUtils]: 82: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,233 INFO L290 TraceCheckUtils]: 83: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,234 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {34356#true} {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,234 INFO L272 TraceCheckUtils]: 85: Hoare triple {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,235 INFO L290 TraceCheckUtils]: 86: Hoare triple {34356#true} ~cond := #in~cond; {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:44:25,235 INFO L290 TraceCheckUtils]: 87: Hoare triple {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:44:25,235 INFO L290 TraceCheckUtils]: 88: Hoare triple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:44:25,237 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} {34603#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {34637#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,237 INFO L272 TraceCheckUtils]: 90: Hoare triple {34637#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,238 INFO L290 TraceCheckUtils]: 91: Hoare triple {34356#true} ~cond := #in~cond; {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:44:25,238 INFO L290 TraceCheckUtils]: 92: Hoare triple {34578#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:44:25,238 INFO L290 TraceCheckUtils]: 93: Hoare triple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:44:25,241 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {34582#(not (= |__VERIFIER_assert_#in~cond| 0))} {34637#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #106#return; {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,241 INFO L272 TraceCheckUtils]: 95: Hoare triple {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {34356#true} is VALID [2022-04-08 12:44:25,241 INFO L290 TraceCheckUtils]: 96: Hoare triple {34356#true} ~cond := #in~cond; {34356#true} is VALID [2022-04-08 12:44:25,241 INFO L290 TraceCheckUtils]: 97: Hoare triple {34356#true} assume !(0 == ~cond); {34356#true} is VALID [2022-04-08 12:44:25,241 INFO L290 TraceCheckUtils]: 98: Hoare triple {34356#true} assume true; {34356#true} is VALID [2022-04-08 12:44:25,242 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {34356#true} {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} #108#return; {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,243 INFO L290 TraceCheckUtils]: 100: Hoare triple {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,247 INFO L290 TraceCheckUtils]: 101: Hoare triple {34653#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= (mod main_~k~0 2) 0) (= main_~d~0 1) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,248 INFO L290 TraceCheckUtils]: 102: Hoare triple {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,248 INFO L290 TraceCheckUtils]: 103: Hoare triple {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-08 12:44:25,251 INFO L290 TraceCheckUtils]: 104: Hoare triple {34675#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (= (+ main_~c~0 main_~b~0 (* (+ (- 1) main_~k~0) main_~b~0)) main_~x~0) (= (* (+ (- 1) main_~k~0) main_~b~0) (* main_~b~0 2)) (= (mod (+ main_~k~0 1) 2) 0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {34685#(and (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} is VALID [2022-04-08 12:44:25,251 INFO L290 TraceCheckUtils]: 105: Hoare triple {34685#(and (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} assume !false; {34685#(and (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} is VALID [2022-04-08 12:44:25,252 INFO L290 TraceCheckUtils]: 106: Hoare triple {34685#(and (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} assume !(0 != ~b~0); {34692#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} is VALID [2022-04-08 12:44:25,253 INFO L272 TraceCheckUtils]: 107: Hoare triple {34692#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= (* main_~a~0 2) (* main_~a~0 (+ (- 1) (* (- 1) main_~s~0)))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (mod (+ main_~s~0 1) 2) 0) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {34696#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:44:25,253 INFO L290 TraceCheckUtils]: 108: Hoare triple {34696#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {34700#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:44:25,254 INFO L290 TraceCheckUtils]: 109: Hoare triple {34700#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {34357#false} is VALID [2022-04-08 12:44:25,254 INFO L290 TraceCheckUtils]: 110: Hoare triple {34357#false} assume !false; {34357#false} is VALID [2022-04-08 12:44:25,254 INFO L134 CoverageAnalysis]: Checked inductivity of 339 backedges. 90 proven. 42 refuted. 0 times theorem prover too weak. 207 trivial. 0 not checked. [2022-04-08 12:44:25,254 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:45:01,898 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 12:45:02,334 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:45:02,334 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [727122108] [2022-04-08 12:45:02,334 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:45:02,334 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [536423866] [2022-04-08 12:45:02,334 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [536423866] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-08 12:45:02,335 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-08 12:45:02,335 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2022-04-08 12:45:02,335 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:45:02,335 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [859144198] [2022-04-08 12:45:02,335 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [859144198] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:45:02,335 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:45:02,335 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-08 12:45:02,335 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1979619294] [2022-04-08 12:45:02,335 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:45:02,336 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) Word has length 111 [2022-04-08 12:45:02,336 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:45:02,337 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 12:45:02,493 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 12:45:02,493 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-08 12:45:02,493 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:45:02,494 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-08 12:45:02,494 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=517, Unknown=0, NotChecked=0, Total=600 [2022-04-08 12:45:02,494 INFO L87 Difference]: Start difference. First operand 499 states and 686 transitions. Second operand has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 12:45:09,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:45:09,564 INFO L93 Difference]: Finished difference Result 588 states and 809 transitions. [2022-04-08 12:45:09,565 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-08 12:45:09,565 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) Word has length 111 [2022-04-08 12:45:09,565 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:45:09,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 12:45:09,567 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 158 transitions. [2022-04-08 12:45:09,567 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 12:45:09,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 158 transitions. [2022-04-08 12:45:09,569 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 158 transitions. [2022-04-08 12:45:09,852 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 12:45:09,873 INFO L225 Difference]: With dead ends: 588 [2022-04-08 12:45:09,874 INFO L226 Difference]: Without dead ends: 585 [2022-04-08 12:45:09,874 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 136 GetRequests, 108 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 184 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=108, Invalid=704, Unknown=0, NotChecked=0, Total=812 [2022-04-08 12:45:09,875 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 63 mSDsluCounter, 267 mSDsCounter, 0 mSdLazyCounter, 829 mSolverCounterSat, 70 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 83 SdHoareTripleChecker+Valid, 320 SdHoareTripleChecker+Invalid, 899 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 70 IncrementalHoareTripleChecker+Valid, 829 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-04-08 12:45:09,875 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [83 Valid, 320 Invalid, 899 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [70 Valid, 829 Invalid, 0 Unknown, 0 Unchecked, 2.5s Time] [2022-04-08 12:45:09,876 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 585 states. [2022-04-08 12:45:11,522 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 585 to 528. [2022-04-08 12:45:11,522 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:45:11,523 INFO L82 GeneralOperation]: Start isEquivalent. First operand 585 states. Second operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-08 12:45:11,524 INFO L74 IsIncluded]: Start isIncluded. First operand 585 states. Second operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-08 12:45:11,524 INFO L87 Difference]: Start difference. First operand 585 states. Second operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-08 12:45:11,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:45:11,539 INFO L93 Difference]: Finished difference Result 585 states and 805 transitions. [2022-04-08 12:45:11,539 INFO L276 IsEmpty]: Start isEmpty. Operand 585 states and 805 transitions. [2022-04-08 12:45:11,541 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:45:11,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:45:11,541 INFO L74 IsIncluded]: Start isIncluded. First operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) Second operand 585 states. [2022-04-08 12:45:11,541 INFO L87 Difference]: Start difference. First operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) Second operand 585 states. [2022-04-08 12:45:11,561 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:45:11,561 INFO L93 Difference]: Finished difference Result 585 states and 805 transitions. [2022-04-08 12:45:11,561 INFO L276 IsEmpty]: Start isEmpty. Operand 585 states and 805 transitions. [2022-04-08 12:45:11,563 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:45:11,563 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:45:11,563 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:45:11,563 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:45:11,564 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 528 states, 306 states have (on average 1.1928104575163399) internal successors, (365), 307 states have internal predecessors, (365), 183 states have call successors, (183), 39 states have call predecessors, (183), 38 states have return successors, (181), 181 states have call predecessors, (181), 181 states have call successors, (181) [2022-04-08 12:45:11,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 528 states to 528 states and 729 transitions. [2022-04-08 12:45:11,582 INFO L78 Accepts]: Start accepts. Automaton has 528 states and 729 transitions. Word has length 111 [2022-04-08 12:45:11,582 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:45:11,583 INFO L478 AbstractCegarLoop]: Abstraction has 528 states and 729 transitions. [2022-04-08 12:45:11,583 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 16 states have (on average 2.25) internal successors, (36), 16 states have internal predecessors, (36), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 7 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-08 12:45:11,583 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 528 states and 729 transitions. [2022-04-08 12:45:13,771 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 729 edges. 729 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:45:13,771 INFO L276 IsEmpty]: Start isEmpty. Operand 528 states and 729 transitions. [2022-04-08 12:45:13,772 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-08 12:45:13,772 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:45:13,772 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-08 12:45:13,788 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 12:45:13,972 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 12:45:13,973 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:45:13,973 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:45:13,973 INFO L85 PathProgramCache]: Analyzing trace with hash 890766036, now seen corresponding path program 9 times [2022-04-08 12:45:13,973 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:45:13,973 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [231190700] [2022-04-08 12:45:13,974 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:45:13,974 INFO L85 PathProgramCache]: Analyzing trace with hash 890766036, now seen corresponding path program 10 times [2022-04-08 12:45:13,974 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:45:13,974 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [491700408] [2022-04-08 12:45:13,974 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:45:13,974 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:45:13,994 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:45:13,994 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [310607083] [2022-04-08 12:45:13,994 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 12:45:13,994 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:45:13,994 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:45:13,996 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 12:45:13,997 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 12:45:14,066 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 12:45:14,066 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:45:14,068 INFO L263 TraceCheckSpWp]: Trace formula consists of 252 conjuncts, 99 conjunts are in the unsatisfiable core [2022-04-08 12:45:14,091 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:45:14,098 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 12:45:16,553 INFO L272 TraceCheckUtils]: 0: Hoare triple {38189#true} call ULTIMATE.init(); {38189#true} is VALID [2022-04-08 12:45:16,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {38189#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(11, 2);call #Ultimate.allocInit(12, 3); {38189#true} is VALID [2022-04-08 12:45:16,553 INFO L290 TraceCheckUtils]: 2: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:45:16,553 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38189#true} {38189#true} #112#return; {38189#true} is VALID [2022-04-08 12:45:16,553 INFO L272 TraceCheckUtils]: 4: Hoare triple {38189#true} call #t~ret6 := main(); {38189#true} is VALID [2022-04-08 12:45:16,554 INFO L290 TraceCheckUtils]: 5: Hoare triple {38189#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {38189#true} is VALID [2022-04-08 12:45:16,554 INFO L272 TraceCheckUtils]: 6: Hoare triple {38189#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,554 INFO L290 TraceCheckUtils]: 7: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:45:16,554 INFO L290 TraceCheckUtils]: 8: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:45:16,554 INFO L290 TraceCheckUtils]: 9: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:45:16,554 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38189#true} {38189#true} #94#return; {38189#true} is VALID [2022-04-08 12:45:16,554 INFO L290 TraceCheckUtils]: 11: Hoare triple {38189#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {38189#true} is VALID [2022-04-08 12:45:16,554 INFO L272 TraceCheckUtils]: 12: Hoare triple {38189#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,554 INFO L290 TraceCheckUtils]: 13: Hoare triple {38189#true} ~cond := #in~cond; {38233#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 12:45:16,555 INFO L290 TraceCheckUtils]: 14: Hoare triple {38233#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {38237#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:45:16,555 INFO L290 TraceCheckUtils]: 15: Hoare triple {38237#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {38237#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 12:45:16,555 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {38237#(not (= |assume_abort_if_not_#in~cond| 0))} {38189#true} #96#return; {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,556 INFO L272 TraceCheckUtils]: 17: Hoare triple {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,556 INFO L290 TraceCheckUtils]: 18: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:45:16,556 INFO L290 TraceCheckUtils]: 19: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:45:16,556 INFO L290 TraceCheckUtils]: 20: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:45:16,556 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38189#true} {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #98#return; {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,556 INFO L272 TraceCheckUtils]: 22: Hoare triple {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,556 INFO L290 TraceCheckUtils]: 23: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:45:16,556 INFO L290 TraceCheckUtils]: 24: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:45:16,556 INFO L290 TraceCheckUtils]: 25: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:45:16,557 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {38189#true} {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} #100#return; {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,557 INFO L290 TraceCheckUtils]: 27: Hoare triple {38244#(and (<= 0 main_~y~0) (<= main_~y~0 5))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {38278#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,558 INFO L290 TraceCheckUtils]: 28: Hoare triple {38278#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} assume !false; {38278#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,558 INFO L290 TraceCheckUtils]: 29: Hoare triple {38278#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= main_~y~0 5))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:45:16,558 INFO L290 TraceCheckUtils]: 30: Hoare triple {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} assume !false; {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:45:16,559 INFO L290 TraceCheckUtils]: 31: Hoare triple {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} is VALID [2022-04-08 12:45:16,559 INFO L290 TraceCheckUtils]: 32: Hoare triple {38285#(and (<= 0 main_~y~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= main_~y~0 5) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38295#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,560 INFO L290 TraceCheckUtils]: 33: Hoare triple {38295#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !false; {38295#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,560 INFO L290 TraceCheckUtils]: 34: Hoare triple {38295#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38302#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,561 INFO L290 TraceCheckUtils]: 35: Hoare triple {38302#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !false; {38302#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,561 INFO L290 TraceCheckUtils]: 36: Hoare triple {38302#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (<= main_~y~0 5))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,561 INFO L290 TraceCheckUtils]: 37: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} assume !false; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,562 INFO L272 TraceCheckUtils]: 38: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,562 INFO L290 TraceCheckUtils]: 39: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:45:16,562 INFO L290 TraceCheckUtils]: 40: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:45:16,562 INFO L290 TraceCheckUtils]: 41: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:45:16,562 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {38189#true} {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} #102#return; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,563 INFO L272 TraceCheckUtils]: 43: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,563 INFO L290 TraceCheckUtils]: 44: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:45:16,563 INFO L290 TraceCheckUtils]: 45: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:45:16,563 INFO L290 TraceCheckUtils]: 46: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:45:16,563 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {38189#true} {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} #104#return; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,564 INFO L272 TraceCheckUtils]: 48: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,564 INFO L290 TraceCheckUtils]: 49: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:45:16,564 INFO L290 TraceCheckUtils]: 50: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:45:16,564 INFO L290 TraceCheckUtils]: 51: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:45:16,566 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {38189#true} {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} #106#return; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,566 INFO L272 TraceCheckUtils]: 53: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,566 INFO L290 TraceCheckUtils]: 54: Hoare triple {38189#true} ~cond := #in~cond; {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:45:16,566 INFO L290 TraceCheckUtils]: 55: Hoare triple {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:45:16,567 INFO L290 TraceCheckUtils]: 56: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:45:16,567 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} #108#return; {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,568 INFO L290 TraceCheckUtils]: 58: Hoare triple {38309#(and (= main_~b~0 main_~v~0) (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (<= main_~y~0 5))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,568 INFO L290 TraceCheckUtils]: 59: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} assume !false; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,568 INFO L272 TraceCheckUtils]: 60: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,569 INFO L290 TraceCheckUtils]: 61: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:45:16,569 INFO L290 TraceCheckUtils]: 62: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:45:16,569 INFO L290 TraceCheckUtils]: 63: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:45:16,569 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {38189#true} {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} #102#return; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,569 INFO L272 TraceCheckUtils]: 65: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,570 INFO L290 TraceCheckUtils]: 66: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:45:16,570 INFO L290 TraceCheckUtils]: 67: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:45:16,570 INFO L290 TraceCheckUtils]: 68: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:45:16,570 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {38189#true} {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} #104#return; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,570 INFO L272 TraceCheckUtils]: 70: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,571 INFO L290 TraceCheckUtils]: 71: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:45:16,571 INFO L290 TraceCheckUtils]: 72: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:45:16,571 INFO L290 TraceCheckUtils]: 73: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:45:16,571 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {38189#true} {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} #106#return; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,572 INFO L272 TraceCheckUtils]: 75: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,572 INFO L290 TraceCheckUtils]: 76: Hoare triple {38189#true} ~cond := #in~cond; {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:45:16,572 INFO L290 TraceCheckUtils]: 77: Hoare triple {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:45:16,572 INFO L290 TraceCheckUtils]: 78: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:45:16,573 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} #108#return; {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,574 INFO L290 TraceCheckUtils]: 80: Hoare triple {38378#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (<= main_~y~0 5))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {38445#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,575 INFO L290 TraceCheckUtils]: 81: Hoare triple {38445#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (<= main_~y~0 5))} assume !false; {38445#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,575 INFO L272 TraceCheckUtils]: 82: Hoare triple {38445#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,575 INFO L290 TraceCheckUtils]: 83: Hoare triple {38189#true} ~cond := #in~cond; {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:45:16,575 INFO L290 TraceCheckUtils]: 84: Hoare triple {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:45:16,576 INFO L290 TraceCheckUtils]: 85: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:45:16,577 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38445#(and (<= 0 main_~y~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (= main_~a~0 main_~y~0) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (<= main_~y~0 5))} #102#return; {38464#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,577 INFO L272 TraceCheckUtils]: 87: Hoare triple {38464#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,579 INFO L290 TraceCheckUtils]: 88: Hoare triple {38189#true} ~cond := #in~cond; {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:45:16,580 INFO L290 TraceCheckUtils]: 89: Hoare triple {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:45:16,580 INFO L290 TraceCheckUtils]: 90: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:45:16,581 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38464#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} #104#return; {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,582 INFO L272 TraceCheckUtils]: 92: Hoare triple {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,582 INFO L290 TraceCheckUtils]: 93: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:45:16,582 INFO L290 TraceCheckUtils]: 94: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:45:16,582 INFO L290 TraceCheckUtils]: 95: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:45:16,583 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {38189#true} {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} #106#return; {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,583 INFO L272 TraceCheckUtils]: 97: Hoare triple {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:45:16,584 INFO L290 TraceCheckUtils]: 98: Hoare triple {38189#true} ~cond := #in~cond; {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:45:16,584 INFO L290 TraceCheckUtils]: 99: Hoare triple {38364#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:45:16,584 INFO L290 TraceCheckUtils]: 100: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:45:16,586 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} #108#return; {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,586 INFO L290 TraceCheckUtils]: 102: Hoare triple {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} assume !(~c~0 >= 2 * ~v~0); {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,588 INFO L290 TraceCheckUtils]: 103: Hoare triple {38480#(and (<= 0 main_~y~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~y~0 5))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {38517#(and (<= 0 main_~y~0) (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:45:16,589 INFO L290 TraceCheckUtils]: 104: Hoare triple {38517#(and (<= 0 main_~y~0) (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {38517#(and (<= 0 main_~y~0) (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:45:16,589 INFO L290 TraceCheckUtils]: 105: Hoare triple {38517#(and (<= 0 main_~y~0) (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {38524#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (< main_~c~0 main_~b~0) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-08 12:45:16,592 INFO L290 TraceCheckUtils]: 106: Hoare triple {38524#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (< main_~c~0 main_~b~0) (<= main_~y~0 5) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38528#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ (* main_~p~0 main_~x~0 (- 4)) main_~y~0) main_~b~0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (<= (* (* main_~p~0 main_~x~0) 4) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,592 INFO L290 TraceCheckUtils]: 107: Hoare triple {38528#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ (* main_~p~0 main_~x~0 (- 4)) main_~y~0) main_~b~0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (<= (* (* main_~p~0 main_~x~0) 4) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} assume !false; {38528#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ (* main_~p~0 main_~x~0 (- 4)) main_~y~0) main_~b~0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (<= (* (* main_~p~0 main_~x~0) 4) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,593 INFO L290 TraceCheckUtils]: 108: Hoare triple {38528#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (= (+ (* main_~p~0 main_~x~0 (- 4)) main_~y~0) main_~b~0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (<= (* (* main_~p~0 main_~x~0) 4) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} assume !(0 != ~b~0); {38535#(and (= main_~r~0 0) (= main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} is VALID [2022-04-08 12:45:16,596 INFO L272 TraceCheckUtils]: 109: Hoare triple {38535#(and (= main_~r~0 0) (= main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (= main_~s~0 1) (= (+ main_~q~0 (* main_~p~0 4)) 0) (< main_~y~0 (* 5 (* main_~p~0 main_~x~0))) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (<= main_~y~0 5))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {38539#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:45:16,596 INFO L290 TraceCheckUtils]: 110: Hoare triple {38539#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {38543#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:45:16,596 INFO L290 TraceCheckUtils]: 111: Hoare triple {38543#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {38190#false} is VALID [2022-04-08 12:45:16,597 INFO L290 TraceCheckUtils]: 112: Hoare triple {38190#false} assume !false; {38190#false} is VALID [2022-04-08 12:45:16,597 INFO L134 CoverageAnalysis]: Checked inductivity of 343 backedges. 106 proven. 63 refuted. 0 times theorem prover too weak. 174 trivial. 0 not checked. [2022-04-08 12:45:16,597 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 12:46:17,968 INFO L290 TraceCheckUtils]: 112: Hoare triple {38190#false} assume !false; {38190#false} is VALID [2022-04-08 12:46:17,968 INFO L290 TraceCheckUtils]: 111: Hoare triple {38543#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {38190#false} is VALID [2022-04-08 12:46:17,969 INFO L290 TraceCheckUtils]: 110: Hoare triple {38539#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {38543#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 12:46:17,969 INFO L272 TraceCheckUtils]: 109: Hoare triple {38559#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {38539#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 12:46:17,970 INFO L290 TraceCheckUtils]: 108: Hoare triple {38563#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {38559#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-08 12:46:17,970 INFO L290 TraceCheckUtils]: 107: Hoare triple {38563#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !false; {38563#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 12:46:18,438 INFO L290 TraceCheckUtils]: 106: Hoare triple {38570#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38563#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-08 12:46:18,439 INFO L290 TraceCheckUtils]: 105: Hoare triple {38574#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {38570#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:46:18,439 INFO L290 TraceCheckUtils]: 104: Hoare triple {38574#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {38574#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:46:18,559 INFO L290 TraceCheckUtils]: 103: Hoare triple {38581#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {38574#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:46:18,560 INFO L290 TraceCheckUtils]: 102: Hoare triple {38581#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {38581#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:46:18,561 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #108#return; {38581#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:46:18,561 INFO L290 TraceCheckUtils]: 100: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:46:18,561 INFO L290 TraceCheckUtils]: 99: Hoare triple {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:46:18,562 INFO L290 TraceCheckUtils]: 98: Hoare triple {38189#true} ~cond := #in~cond; {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:46:18,562 INFO L272 TraceCheckUtils]: 97: Hoare triple {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,563 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {38189#true} {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #106#return; {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:46:18,563 INFO L290 TraceCheckUtils]: 95: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,563 INFO L290 TraceCheckUtils]: 94: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,563 INFO L290 TraceCheckUtils]: 93: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,563 INFO L272 TraceCheckUtils]: 92: Hoare triple {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,564 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38620#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {38588#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:46:18,564 INFO L290 TraceCheckUtils]: 90: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:46:18,565 INFO L290 TraceCheckUtils]: 89: Hoare triple {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:46:18,565 INFO L290 TraceCheckUtils]: 88: Hoare triple {38189#true} ~cond := #in~cond; {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:46:18,565 INFO L272 TraceCheckUtils]: 87: Hoare triple {38620#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,566 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} {38636#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {38620#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:46:18,566 INFO L290 TraceCheckUtils]: 85: Hoare triple {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:46:18,567 INFO L290 TraceCheckUtils]: 84: Hoare triple {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {38368#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 12:46:18,567 INFO L290 TraceCheckUtils]: 83: Hoare triple {38189#true} ~cond := #in~cond; {38598#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 12:46:18,567 INFO L272 TraceCheckUtils]: 82: Hoare triple {38636#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,568 INFO L290 TraceCheckUtils]: 81: Hoare triple {38636#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {38636#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:46:18,588 INFO L290 TraceCheckUtils]: 80: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {38636#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-08 12:46:18,589 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {38189#true} {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #108#return; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 12:46:18,589 INFO L290 TraceCheckUtils]: 78: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,589 INFO L290 TraceCheckUtils]: 77: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,589 INFO L290 TraceCheckUtils]: 76: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,589 INFO L272 TraceCheckUtils]: 75: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,590 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {38189#true} {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #106#return; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 12:46:18,590 INFO L290 TraceCheckUtils]: 73: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,590 INFO L290 TraceCheckUtils]: 72: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,590 INFO L290 TraceCheckUtils]: 71: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,590 INFO L272 TraceCheckUtils]: 70: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,591 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {38189#true} {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #104#return; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 12:46:18,591 INFO L290 TraceCheckUtils]: 68: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,591 INFO L290 TraceCheckUtils]: 67: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,591 INFO L290 TraceCheckUtils]: 66: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,592 INFO L272 TraceCheckUtils]: 65: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,592 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {38189#true} {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #102#return; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 12:46:18,592 INFO L290 TraceCheckUtils]: 63: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,592 INFO L290 TraceCheckUtils]: 62: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,593 INFO L290 TraceCheckUtils]: 61: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,600 INFO L272 TraceCheckUtils]: 60: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,603 INFO L290 TraceCheckUtils]: 59: Hoare triple {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !false; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 12:46:18,622 INFO L290 TraceCheckUtils]: 58: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {38655#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-08 12:46:18,623 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {38189#true} {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #108#return; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 12:46:18,623 INFO L290 TraceCheckUtils]: 56: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,623 INFO L290 TraceCheckUtils]: 55: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,623 INFO L290 TraceCheckUtils]: 54: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,623 INFO L272 TraceCheckUtils]: 53: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,624 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {38189#true} {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #106#return; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 12:46:18,624 INFO L290 TraceCheckUtils]: 51: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,624 INFO L290 TraceCheckUtils]: 50: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,624 INFO L290 TraceCheckUtils]: 49: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,624 INFO L272 TraceCheckUtils]: 48: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,625 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {38189#true} {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #104#return; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 12:46:18,625 INFO L290 TraceCheckUtils]: 46: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,625 INFO L290 TraceCheckUtils]: 45: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,625 INFO L290 TraceCheckUtils]: 44: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,626 INFO L272 TraceCheckUtils]: 43: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,626 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {38189#true} {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #102#return; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 12:46:18,626 INFO L290 TraceCheckUtils]: 41: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,626 INFO L290 TraceCheckUtils]: 40: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,626 INFO L290 TraceCheckUtils]: 39: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,627 INFO L272 TraceCheckUtils]: 38: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,627 INFO L290 TraceCheckUtils]: 37: Hoare triple {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !false; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 12:46:18,628 INFO L290 TraceCheckUtils]: 36: Hoare triple {38789#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {38722#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-08 12:46:18,629 INFO L290 TraceCheckUtils]: 35: Hoare triple {38789#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !false; {38789#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-08 12:46:18,630 INFO L290 TraceCheckUtils]: 34: Hoare triple {38189#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38789#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-08 12:46:18,630 INFO L290 TraceCheckUtils]: 33: Hoare triple {38189#true} assume !false; {38189#true} is VALID [2022-04-08 12:46:18,630 INFO L290 TraceCheckUtils]: 32: Hoare triple {38189#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L290 TraceCheckUtils]: 31: Hoare triple {38189#true} assume !(~c~0 >= ~b~0); {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L290 TraceCheckUtils]: 30: Hoare triple {38189#true} assume !false; {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L290 TraceCheckUtils]: 29: Hoare triple {38189#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L290 TraceCheckUtils]: 28: Hoare triple {38189#true} assume !false; {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L290 TraceCheckUtils]: 27: Hoare triple {38189#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {38189#true} {38189#true} #100#return; {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L290 TraceCheckUtils]: 25: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L290 TraceCheckUtils]: 24: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L290 TraceCheckUtils]: 23: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L272 TraceCheckUtils]: 22: Hoare triple {38189#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38189#true} {38189#true} #98#return; {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L290 TraceCheckUtils]: 20: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L290 TraceCheckUtils]: 19: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,631 INFO L290 TraceCheckUtils]: 18: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L272 TraceCheckUtils]: 17: Hoare triple {38189#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {38189#true} {38189#true} #96#return; {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L290 TraceCheckUtils]: 15: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L290 TraceCheckUtils]: 14: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L290 TraceCheckUtils]: 13: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L272 TraceCheckUtils]: 12: Hoare triple {38189#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 5 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L290 TraceCheckUtils]: 11: Hoare triple {38189#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38189#true} {38189#true} #94#return; {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L290 TraceCheckUtils]: 9: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L290 TraceCheckUtils]: 8: Hoare triple {38189#true} assume !(0 == ~cond); {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L290 TraceCheckUtils]: 7: Hoare triple {38189#true} ~cond := #in~cond; {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L272 TraceCheckUtils]: 6: Hoare triple {38189#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 5 then 1 else 0)); {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L290 TraceCheckUtils]: 5: Hoare triple {38189#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L272 TraceCheckUtils]: 4: Hoare triple {38189#true} call #t~ret6 := main(); {38189#true} is VALID [2022-04-08 12:46:18,632 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38189#true} {38189#true} #112#return; {38189#true} is VALID [2022-04-08 12:46:18,633 INFO L290 TraceCheckUtils]: 2: Hoare triple {38189#true} assume true; {38189#true} is VALID [2022-04-08 12:46:18,633 INFO L290 TraceCheckUtils]: 1: Hoare triple {38189#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(11, 2);call #Ultimate.allocInit(12, 3); {38189#true} is VALID [2022-04-08 12:46:18,633 INFO L272 TraceCheckUtils]: 0: Hoare triple {38189#true} call ULTIMATE.init(); {38189#true} is VALID [2022-04-08 12:46:18,633 INFO L134 CoverageAnalysis]: Checked inductivity of 343 backedges. 105 proven. 29 refuted. 0 times theorem prover too weak. 209 trivial. 0 not checked. [2022-04-08 12:46:18,633 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 12:46:18,633 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [491700408] [2022-04-08 12:46:18,634 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 12:46:18,634 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [310607083] [2022-04-08 12:46:18,634 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [310607083] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 12:46:18,634 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 12:46:18,634 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 17] total 34 [2022-04-08 12:46:18,634 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 12:46:18,634 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [231190700] [2022-04-08 12:46:18,634 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [231190700] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 12:46:18,634 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 12:46:18,634 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-08 12:46:18,634 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [551801037] [2022-04-08 12:46:18,635 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 12:46:18,635 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) Word has length 113 [2022-04-08 12:46:18,635 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 12:46:18,635 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 12:46:18,725 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:46:18,726 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-08 12:46:18,726 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 12:46:18,726 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-08 12:46:18,726 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=182, Invalid=940, Unknown=0, NotChecked=0, Total=1122 [2022-04-08 12:46:18,726 INFO L87 Difference]: Start difference. First operand 528 states and 729 transitions. Second operand has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 12:46:26,018 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:46:26,018 INFO L93 Difference]: Finished difference Result 644 states and 877 transitions. [2022-04-08 12:46:26,018 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-08 12:46:26,018 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) Word has length 113 [2022-04-08 12:46:26,019 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 12:46:26,019 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 12:46:26,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 195 transitions. [2022-04-08 12:46:26,021 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 12:46:26,023 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 195 transitions. [2022-04-08 12:46:26,024 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 195 transitions. [2022-04-08 12:46:26,283 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:46:26,305 INFO L225 Difference]: With dead ends: 644 [2022-04-08 12:46:26,306 INFO L226 Difference]: Without dead ends: 576 [2022-04-08 12:46:26,306 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 232 GetRequests, 189 SyntacticMatches, 4 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 478 ImplicationChecksByTransitivity, 1.8s TimeCoverageRelationStatistics Valid=258, Invalid=1382, Unknown=0, NotChecked=0, Total=1640 [2022-04-08 12:46:26,307 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 85 mSDsluCounter, 343 mSDsCounter, 0 mSdLazyCounter, 1542 mSolverCounterSat, 85 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 103 SdHoareTripleChecker+Valid, 394 SdHoareTripleChecker+Invalid, 1627 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 85 IncrementalHoareTripleChecker+Valid, 1542 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.4s IncrementalHoareTripleChecker+Time [2022-04-08 12:46:26,307 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [103 Valid, 394 Invalid, 1627 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [85 Valid, 1542 Invalid, 0 Unknown, 0 Unchecked, 2.4s Time] [2022-04-08 12:46:26,308 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 576 states. [2022-04-08 12:46:28,157 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 576 to 561. [2022-04-08 12:46:28,157 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 12:46:28,157 INFO L82 GeneralOperation]: Start isEquivalent. First operand 576 states. Second operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) [2022-04-08 12:46:28,158 INFO L74 IsIncluded]: Start isIncluded. First operand 576 states. Second operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) [2022-04-08 12:46:28,158 INFO L87 Difference]: Start difference. First operand 576 states. Second operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) [2022-04-08 12:46:28,176 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:46:28,177 INFO L93 Difference]: Finished difference Result 576 states and 789 transitions. [2022-04-08 12:46:28,177 INFO L276 IsEmpty]: Start isEmpty. Operand 576 states and 789 transitions. [2022-04-08 12:46:28,178 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:46:28,178 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:46:28,179 INFO L74 IsIncluded]: Start isIncluded. First operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) Second operand 576 states. [2022-04-08 12:46:28,180 INFO L87 Difference]: Start difference. First operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) Second operand 576 states. [2022-04-08 12:46:28,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 12:46:28,198 INFO L93 Difference]: Finished difference Result 576 states and 789 transitions. [2022-04-08 12:46:28,199 INFO L276 IsEmpty]: Start isEmpty. Operand 576 states and 789 transitions. [2022-04-08 12:46:28,200 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 12:46:28,200 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 12:46:28,200 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 12:46:28,200 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 12:46:28,201 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 561 states, 324 states have (on average 1.191358024691358) internal successors, (386), 325 states have internal predecessors, (386), 195 states have call successors, (195), 42 states have call predecessors, (195), 41 states have return successors, (193), 193 states have call predecessors, (193), 193 states have call successors, (193) [2022-04-08 12:46:28,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 561 states to 561 states and 774 transitions. [2022-04-08 12:46:28,222 INFO L78 Accepts]: Start accepts. Automaton has 561 states and 774 transitions. Word has length 113 [2022-04-08 12:46:28,222 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 12:46:28,222 INFO L478 AbstractCegarLoop]: Abstraction has 561 states and 774 transitions. [2022-04-08 12:46:28,223 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 20 states have (on average 2.05) internal successors, (41), 19 states have internal predecessors, (41), 8 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (17), 6 states have call predecessors, (17), 7 states have call successors, (17) [2022-04-08 12:46:28,223 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 561 states and 774 transitions. [2022-04-08 12:46:30,616 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 774 edges. 774 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 12:46:30,616 INFO L276 IsEmpty]: Start isEmpty. Operand 561 states and 774 transitions. [2022-04-08 12:46:30,617 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-08 12:46:30,617 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 12:46:30,618 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-08 12:46:30,636 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Ended with exit code 0 [2022-04-08 12:46:30,818 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 12:46:30,818 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 12:46:30,818 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 12:46:30,819 INFO L85 PathProgramCache]: Analyzing trace with hash 1938711081, now seen corresponding path program 11 times [2022-04-08 12:46:30,819 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 12:46:30,819 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1242653995] [2022-04-08 12:46:30,819 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 12:46:30,819 INFO L85 PathProgramCache]: Analyzing trace with hash 1938711081, now seen corresponding path program 12 times [2022-04-08 12:46:30,819 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 12:46:30,819 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1490964001] [2022-04-08 12:46:30,819 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 12:46:30,819 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 12:46:30,844 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 12:46:30,844 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [62435306] [2022-04-08 12:46:30,844 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 12:46:30,845 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 12:46:30,845 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 12:46:30,852 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 12:46:30,853 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 12:46:30,924 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2022-04-08 12:46:30,925 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 12:46:30,926 INFO L263 TraceCheckSpWp]: Trace formula consists of 289 conjuncts, 104 conjunts are in the unsatisfiable core [2022-04-08 12:46:30,945 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 12:46:30,947 INFO L286 TraceCheckSpWp]: Computing forward predicates...