/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/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 08:53:47,566 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 08:53:47,567 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 08:53:47,597 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 08:53:47,598 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 08:53:47,600 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 08:53:47,604 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 08:53:47,608 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 08:53:47,610 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 08:53:47,612 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 08:53:47,612 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 08:53:47,628 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 08:53:47,628 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 08:53:47,628 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 08:53:47,629 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 08:53:47,630 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 08:53:47,630 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 08:53:47,631 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 08:53:47,631 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 08:53:47,632 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 08:53:47,633 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 08:53:47,634 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 08:53:47,634 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 08:53:47,635 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 08:53:47,635 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 08:53:47,637 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 08:53:47,637 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 08:53:47,637 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 08:53:47,638 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 08:53:47,638 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 08:53:47,638 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 08:53:47,638 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 08:53:47,639 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 08:53:47,639 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 08:53:47,640 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 08:53:47,640 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 08:53:47,640 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 08:53:47,641 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 08:53:47,641 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 08:53:47,641 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 08:53:47,642 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 08:53:47,646 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 08:53:47,646 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-15 08:53:47,652 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 08:53:47,652 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 08:53:47,653 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 08:53:47,653 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-15 08:53:47,653 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 08:53:47,653 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-15 08:53:47,654 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 08:53:47,654 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 08:53:47,654 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 08:53:47,654 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 08:53:47,654 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-15 08:53:47,654 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 08:53:47,654 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 08:53:47,654 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 08:53:47,655 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 08:53:47,655 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 08:53:47,655 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 08:53:47,655 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 08:53:47,655 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 08:53:47,655 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 08:53:47,656 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 08:53:47,656 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 08:53:47,656 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 08:53:47,656 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 08:53:47,656 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-15 08:53:47,656 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-15 08:53:47,856 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 08:53:47,875 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 08:53:47,877 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 08:53:47,878 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 08:53:47,879 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 08:53:47,880 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound20.c [2022-04-15 08:53:47,931 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9290976d0/8ee022c7da224f229ca664de8c1c7685/FLAG5cf9f3a83 [2022-04-15 08:53:48,278 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 08:53:48,278 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound20.c [2022-04-15 08:53:48,283 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9290976d0/8ee022c7da224f229ca664de8c1c7685/FLAG5cf9f3a83 [2022-04-15 08:53:48,297 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9290976d0/8ee022c7da224f229ca664de8c1c7685 [2022-04-15 08:53:48,299 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 08:53:48,300 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 08:53:48,301 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 08:53:48,301 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 08:53:48,303 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 08:53:48,303 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 08:53:48" (1/1) ... [2022-04-15 08:53:48,304 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2a8a188b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:53:48, skipping insertion in model container [2022-04-15 08:53:48,304 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 08:53:48" (1/1) ... [2022-04-15 08:53:48,309 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 08:53:48,318 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 08:53:48,455 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_unwindbound20.c[490,503] [2022-04-15 08:53:48,485 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 08:53:48,491 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 08:53:48,498 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_unwindbound20.c[490,503] [2022-04-15 08:53:48,521 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 08:53:48,530 INFO L208 MainTranslator]: Completed translation [2022-04-15 08:53:48,530 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:53:48 WrapperNode [2022-04-15 08:53:48,531 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 08:53:48,531 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 08:53:48,531 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 08:53:48,531 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 08:53:48,540 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:53:48" (1/1) ... [2022-04-15 08:53:48,540 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:53:48" (1/1) ... [2022-04-15 08:53:48,544 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:53:48" (1/1) ... [2022-04-15 08:53:48,544 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:53:48" (1/1) ... [2022-04-15 08:53:48,560 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:53:48" (1/1) ... [2022-04-15 08:53:48,564 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:53:48" (1/1) ... [2022-04-15 08:53:48,564 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:53:48" (1/1) ... [2022-04-15 08:53:48,566 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 08:53:48,569 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 08:53:48,569 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 08:53:48,569 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 08:53:48,570 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:53:48" (1/1) ... [2022-04-15 08:53:48,576 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 08:53:48,582 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:53:48,590 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-15 08:53:48,604 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-15 08:53:48,613 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 08:53:48,613 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 08:53:48,613 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 08:53:48,613 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 08:53:48,614 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 08:53:48,614 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 08:53:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 08:53:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 08:53:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 08:53:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 08:53:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 08:53:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 08:53:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 08:53:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 08:53:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 08:53:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 08:53:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 08:53:48,615 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 08:53:48,615 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 08:53:48,615 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 08:53:48,660 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 08:53:48,661 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 08:53:48,801 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 08:53:48,806 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 08:53:48,807 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-15 08:53:48,808 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 08:53:48 BoogieIcfgContainer [2022-04-15 08:53:48,808 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 08:53:48,809 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 08:53:48,810 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 08:53:48,812 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 08:53:48,812 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 08:53:48" (1/3) ... [2022-04-15 08:53:48,813 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2ddce358 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 08:53:48, skipping insertion in model container [2022-04-15 08:53:48,813 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 08:53:48" (2/3) ... [2022-04-15 08:53:48,813 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2ddce358 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 08:53:48, skipping insertion in model container [2022-04-15 08:53:48,813 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 08:53:48" (3/3) ... [2022-04-15 08:53:48,814 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_unwindbound20.c [2022-04-15 08:53:48,818 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 08:53:48,818 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 08:53:48,882 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 08:53:48,895 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-15 08:53:48,895 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 08:53:48,939 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 08:53:48,945 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-15 08:53:48,945 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:53:48,945 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:53:48,947 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:53:48,951 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:53:48,951 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 1 times [2022-04-15 08:53:48,961 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:48,962 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1682553969] [2022-04-15 08:53:48,975 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:53:48,975 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 2 times [2022-04-15 08:53:48,977 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:53:48,978 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1293125558] [2022-04-15 08:53:48,978 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:53:48,979 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:53:49,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:49,153 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 08:53:49,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:49,187 INFO L290 TraceCheckUtils]: 0: Hoare triple {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-15 08:53:49,187 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-15 08:53:49,187 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-15 08:53:49,188 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 08:53:49,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:49,196 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 08:53:49,196 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 08:53:49,197 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 08:53:49,197 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-15 08:53:49,197 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-15 08:53:49,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:49,208 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 08:53:49,209 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 08:53:49,209 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 08:53:49,209 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-15 08:53:49,211 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 08:53:49,212 INFO L290 TraceCheckUtils]: 1: Hoare triple {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-15 08:53:49,213 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-15 08:53:49,213 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-15 08:53:49,213 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret9 := main(); {43#true} is VALID [2022-04-15 08:53:49,213 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {43#true} is VALID [2022-04-15 08:53:49,214 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-15 08:53:49,215 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 08:53:49,216 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 08:53:49,216 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 08:53:49,216 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-15 08:53:49,216 INFO L272 TraceCheckUtils]: 11: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-15 08:53:49,217 INFO L290 TraceCheckUtils]: 12: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-15 08:53:49,218 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-15 08:53:49,218 INFO L290 TraceCheckUtils]: 14: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-15 08:53:49,218 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-15 08:53:49,219 INFO L290 TraceCheckUtils]: 16: 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-15 08:53:49,219 INFO L290 TraceCheckUtils]: 17: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-15 08:53:49,219 INFO L272 TraceCheckUtils]: 18: 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-15 08:53:49,219 INFO L290 TraceCheckUtils]: 19: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-15 08:53:49,220 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-15 08:53:49,220 INFO L290 TraceCheckUtils]: 21: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-15 08:53:49,220 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:53:49,221 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:53:49,221 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1293125558] [2022-04-15 08:53:49,222 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1293125558] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:49,222 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:49,222 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 08:53:49,225 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:53:49,226 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1682553969] [2022-04-15 08:53:49,227 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1682553969] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:49,227 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:49,227 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 08:53:49,227 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [495329854] [2022-04-15 08:53:49,228 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:53:49,233 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-15 08:53:49,234 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:53:49,237 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:49,265 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:49,265 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 08:53:49,265 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:49,296 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 08:53:49,296 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 08:53:49,298 INFO L87 Difference]: Start difference. First operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:49,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:49,496 INFO L93 Difference]: Finished difference Result 74 states and 111 transitions. [2022-04-15 08:53:49,496 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 08:53:49,496 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-15 08:53:49,496 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:53:49,497 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:49,504 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-15 08:53:49,504 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:49,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-15 08:53:49,514 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 111 transitions. [2022-04-15 08:53:49,637 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:49,644 INFO L225 Difference]: With dead ends: 74 [2022-04-15 08:53:49,644 INFO L226 Difference]: Without dead ends: 36 [2022-04-15 08:53:49,646 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 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-15 08:53:49,649 INFO L913 BasicCegarLoop]: 47 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 51 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:53:49,649 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 51 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:53:49,661 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-15 08:53:49,672 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2022-04-15 08:53:49,672 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:53:49,673 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 08:53:49,674 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 08:53:49,674 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 08:53:49,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:49,679 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-15 08:53:49,679 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-15 08:53:49,679 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:49,679 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:49,680 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 36 states. [2022-04-15 08:53:49,680 INFO L87 Difference]: Start difference. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 36 states. [2022-04-15 08:53:49,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:49,683 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-15 08:53:49,684 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-15 08:53:49,684 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:49,684 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:49,684 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:53:49,685 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:53:49,685 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 08:53:49,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 45 transitions. [2022-04-15 08:53:49,688 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 45 transitions. Word has length 22 [2022-04-15 08:53:49,689 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:53:49,689 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 45 transitions. [2022-04-15 08:53:49,689 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:49,689 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 45 transitions. [2022-04-15 08:53:49,732 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:49,733 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 45 transitions. [2022-04-15 08:53:49,733 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-15 08:53:49,733 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:53:49,734 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:53:49,734 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 08:53:49,734 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:53:49,734 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:53:49,734 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 1 times [2022-04-15 08:53:49,735 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:49,735 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1068962442] [2022-04-15 08:53:49,735 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:53:49,735 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 2 times [2022-04-15 08:53:49,736 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:53:49,736 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [524704117] [2022-04-15 08:53:49,736 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:53:49,736 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:53:49,753 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:53:49,753 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1977927136] [2022-04-15 08:53:49,753 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:53:49,754 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:53:49,754 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:53:49,760 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-15 08:53:49,761 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-15 08:53:49,812 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 08:53:49,812 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:53:49,814 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 08:53:49,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:49,846 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:53:50,043 INFO L272 TraceCheckUtils]: 0: Hoare triple {349#true} call ULTIMATE.init(); {349#true} is VALID [2022-04-15 08:53:50,044 INFO L290 TraceCheckUtils]: 1: Hoare triple {349#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);~counter~0 := 0; {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,044 INFO L290 TraceCheckUtils]: 2: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,045 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {357#(<= ~counter~0 0)} {349#true} #108#return; {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,045 INFO L272 TraceCheckUtils]: 4: Hoare triple {357#(<= ~counter~0 0)} call #t~ret9 := main(); {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,046 INFO L290 TraceCheckUtils]: 5: Hoare triple {357#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,046 INFO L272 TraceCheckUtils]: 6: Hoare triple {357#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,046 INFO L290 TraceCheckUtils]: 7: Hoare triple {357#(<= ~counter~0 0)} ~cond := #in~cond; {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,047 INFO L290 TraceCheckUtils]: 8: Hoare triple {357#(<= ~counter~0 0)} assume !(0 == ~cond); {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,047 INFO L290 TraceCheckUtils]: 9: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,048 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {357#(<= ~counter~0 0)} {357#(<= ~counter~0 0)} #94#return; {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,048 INFO L272 TraceCheckUtils]: 11: Hoare triple {357#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,049 INFO L290 TraceCheckUtils]: 12: Hoare triple {357#(<= ~counter~0 0)} ~cond := #in~cond; {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,049 INFO L290 TraceCheckUtils]: 13: Hoare triple {357#(<= ~counter~0 0)} assume !(0 == ~cond); {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,049 INFO L290 TraceCheckUtils]: 14: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,050 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {357#(<= ~counter~0 0)} {357#(<= ~counter~0 0)} #96#return; {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,050 INFO L290 TraceCheckUtils]: 16: Hoare triple {357#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {357#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:50,051 INFO L290 TraceCheckUtils]: 17: Hoare triple {357#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {406#(<= |main_#t~post6| 0)} is VALID [2022-04-15 08:53:50,051 INFO L290 TraceCheckUtils]: 18: Hoare triple {406#(<= |main_#t~post6| 0)} assume !(#t~post6 < 20);havoc #t~post6; {350#false} is VALID [2022-04-15 08:53:50,051 INFO L272 TraceCheckUtils]: 19: Hoare triple {350#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)); {350#false} is VALID [2022-04-15 08:53:50,051 INFO L290 TraceCheckUtils]: 20: Hoare triple {350#false} ~cond := #in~cond; {350#false} is VALID [2022-04-15 08:53:50,052 INFO L290 TraceCheckUtils]: 21: Hoare triple {350#false} assume 0 == ~cond; {350#false} is VALID [2022-04-15 08:53:50,052 INFO L290 TraceCheckUtils]: 22: Hoare triple {350#false} assume !false; {350#false} is VALID [2022-04-15 08:53:50,052 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:53:50,052 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:53:50,052 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:53:50,052 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [524704117] [2022-04-15 08:53:50,053 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:53:50,053 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1977927136] [2022-04-15 08:53:50,053 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1977927136] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:50,053 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:50,053 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 08:53:50,054 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:53:50,054 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1068962442] [2022-04-15 08:53:50,054 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1068962442] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:50,054 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:50,054 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 08:53:50,054 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1857414584] [2022-04-15 08:53:50,055 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:53:50,055 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 08:53:50,055 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:53:50,055 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:50,095 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:50,095 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 08:53:50,096 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:50,096 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 08:53:50,096 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 08:53:50,096 INFO L87 Difference]: Start difference. First operand 35 states and 45 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:50,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:50,185 INFO L93 Difference]: Finished difference Result 44 states and 54 transitions. [2022-04-15 08:53:50,185 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 08:53:50,186 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 08:53:50,186 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:53:50,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:50,192 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-15 08:53:50,192 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:50,196 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-15 08:53:50,196 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 54 transitions. [2022-04-15 08:53:50,234 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-15 08:53:50,238 INFO L225 Difference]: With dead ends: 44 [2022-04-15 08:53:50,238 INFO L226 Difference]: Without dead ends: 37 [2022-04-15 08:53:50,239 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 08:53:50,243 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 0 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 113 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:53:50,247 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 113 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:53:50,248 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-15 08:53:50,258 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-15 08:53:50,258 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:53:50,258 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 08:53:50,259 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 08:53:50,259 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 08:53:50,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:50,261 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-15 08:53:50,261 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-15 08:53:50,261 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:50,261 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:50,262 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 37 states. [2022-04-15 08:53:50,262 INFO L87 Difference]: Start difference. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 37 states. [2022-04-15 08:53:50,264 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:50,264 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-15 08:53:50,264 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-15 08:53:50,264 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:50,264 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:50,264 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:53:50,265 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:53:50,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 08:53:50,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 47 transitions. [2022-04-15 08:53:50,266 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 47 transitions. Word has length 23 [2022-04-15 08:53:50,266 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:53:50,267 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 47 transitions. [2022-04-15 08:53:50,267 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:50,267 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 47 transitions. [2022-04-15 08:53:50,321 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-15 08:53:50,321 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-15 08:53:50,322 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-15 08:53:50,322 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:53:50,322 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:53:50,358 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-15 08:53:50,535 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-15 08:53:50,536 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:53:50,536 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:53:50,536 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 1 times [2022-04-15 08:53:50,536 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:50,536 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [184268825] [2022-04-15 08:53:50,537 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:53:50,537 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 2 times [2022-04-15 08:53:50,537 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:53:50,537 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [70017626] [2022-04-15 08:53:50,537 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:53:50,537 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:53:50,551 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:53:50,551 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [731033928] [2022-04-15 08:53:50,552 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:53:50,552 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:53:50,552 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:53:50,553 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-15 08:53:50,554 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-15 08:53:50,585 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 08:53:50,585 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:53:50,586 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-15 08:53:50,595 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:50,596 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:53:50,767 INFO L272 TraceCheckUtils]: 0: Hoare triple {657#true} call ULTIMATE.init(); {657#true} is VALID [2022-04-15 08:53:50,767 INFO L290 TraceCheckUtils]: 1: Hoare triple {657#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);~counter~0 := 0; {657#true} is VALID [2022-04-15 08:53:50,767 INFO L290 TraceCheckUtils]: 2: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-15 08:53:50,767 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {657#true} {657#true} #108#return; {657#true} is VALID [2022-04-15 08:53:50,767 INFO L272 TraceCheckUtils]: 4: Hoare triple {657#true} call #t~ret9 := main(); {657#true} is VALID [2022-04-15 08:53:50,768 INFO L290 TraceCheckUtils]: 5: Hoare triple {657#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {657#true} is VALID [2022-04-15 08:53:50,768 INFO L272 TraceCheckUtils]: 6: Hoare triple {657#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {657#true} is VALID [2022-04-15 08:53:50,768 INFO L290 TraceCheckUtils]: 7: Hoare triple {657#true} ~cond := #in~cond; {657#true} is VALID [2022-04-15 08:53:50,768 INFO L290 TraceCheckUtils]: 8: Hoare triple {657#true} assume !(0 == ~cond); {657#true} is VALID [2022-04-15 08:53:50,768 INFO L290 TraceCheckUtils]: 9: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-15 08:53:50,768 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {657#true} {657#true} #94#return; {657#true} is VALID [2022-04-15 08:53:50,768 INFO L272 TraceCheckUtils]: 11: Hoare triple {657#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {657#true} is VALID [2022-04-15 08:53:50,769 INFO L290 TraceCheckUtils]: 12: Hoare triple {657#true} ~cond := #in~cond; {657#true} is VALID [2022-04-15 08:53:50,769 INFO L290 TraceCheckUtils]: 13: Hoare triple {657#true} assume !(0 == ~cond); {657#true} is VALID [2022-04-15 08:53:50,769 INFO L290 TraceCheckUtils]: 14: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-15 08:53:50,769 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {657#true} {657#true} #96#return; {657#true} is VALID [2022-04-15 08:53:50,770 INFO L290 TraceCheckUtils]: 16: Hoare triple {657#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {710#(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-15 08:53:50,770 INFO L290 TraceCheckUtils]: 17: Hoare triple {710#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {710#(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-15 08:53:50,772 INFO L290 TraceCheckUtils]: 18: Hoare triple {710#(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 !!(#t~post6 < 20);havoc #t~post6; {710#(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-15 08:53:50,773 INFO L290 TraceCheckUtils]: 19: Hoare triple {710#(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); {720#(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-15 08:53:50,774 INFO L272 TraceCheckUtils]: 20: Hoare triple {720#(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)); {724#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:53:50,775 INFO L290 TraceCheckUtils]: 21: Hoare triple {724#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {728#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:53:50,775 INFO L290 TraceCheckUtils]: 22: Hoare triple {728#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {658#false} is VALID [2022-04-15 08:53:50,776 INFO L290 TraceCheckUtils]: 23: Hoare triple {658#false} assume !false; {658#false} is VALID [2022-04-15 08:53:50,776 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:53:50,776 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:53:50,776 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:53:50,776 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [70017626] [2022-04-15 08:53:50,776 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:53:50,776 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [731033928] [2022-04-15 08:53:50,776 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [731033928] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:50,777 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:50,777 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 08:53:50,777 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:53:50,777 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [184268825] [2022-04-15 08:53:50,777 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [184268825] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:50,777 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:50,777 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 08:53:50,777 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2126460379] [2022-04-15 08:53:50,777 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:53:50,778 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-15 08:53:50,778 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:53:50,778 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:53:50,792 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:50,793 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 08:53:50,793 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:50,793 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 08:53:50,793 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 08:53:50,793 INFO L87 Difference]: Start difference. First operand 37 states and 47 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:53:51,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:51,069 INFO L93 Difference]: Finished difference Result 57 states and 75 transitions. [2022-04-15 08:53:51,069 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 08:53:51,069 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-15 08:53:51,069 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:53:51,070 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:53:51,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-15 08:53:51,072 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:53:51,075 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-15 08:53:51,075 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 75 transitions. [2022-04-15 08:53:51,124 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:51,126 INFO L225 Difference]: With dead ends: 57 [2022-04-15 08:53:51,126 INFO L226 Difference]: Without dead ends: 54 [2022-04-15 08:53:51,126 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 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-15 08:53:51,127 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 18 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 71 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 73 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 71 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:53:51,127 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 169 Invalid, 73 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:53:51,128 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-15 08:53:51,141 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-15 08:53:51,142 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:53:51,142 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:51,142 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:51,143 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:51,145 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:51,145 INFO L93 Difference]: Finished difference Result 54 states and 71 transitions. [2022-04-15 08:53:51,145 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 71 transitions. [2022-04-15 08:53:51,146 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:51,146 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:51,146 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 54 states. [2022-04-15 08:53:51,146 INFO L87 Difference]: Start difference. First operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 54 states. [2022-04-15 08:53:51,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:51,149 INFO L93 Difference]: Finished difference Result 54 states and 71 transitions. [2022-04-15 08:53:51,149 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 71 transitions. [2022-04-15 08:53:51,149 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:51,149 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:51,150 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:53:51,150 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:53:51,150 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:51,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 70 transitions. [2022-04-15 08:53:51,152 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 70 transitions. Word has length 24 [2022-04-15 08:53:51,152 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:53:51,152 INFO L478 AbstractCegarLoop]: Abstraction has 53 states and 70 transitions. [2022-04-15 08:53:51,152 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:53:51,153 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 53 states and 70 transitions. [2022-04-15 08:53:51,202 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:51,202 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-15 08:53:51,203 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-15 08:53:51,203 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:53:51,203 INFO L499 BasicCegarLoop]: trace histogram [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-15 08:53:51,233 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-15 08:53:51,421 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-15 08:53:51,421 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:53:51,421 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:53:51,422 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 1 times [2022-04-15 08:53:51,422 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:51,422 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [853206245] [2022-04-15 08:53:51,422 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:53:51,422 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 2 times [2022-04-15 08:53:51,422 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:53:51,422 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [170916145] [2022-04-15 08:53:51,422 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:53:51,423 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:53:51,456 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:53:51,456 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1346805614] [2022-04-15 08:53:51,456 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:53:51,456 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:53:51,456 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:53:51,460 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-15 08:53:51,461 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-15 08:53:51,498 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:53:51,498 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:53:51,499 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 08:53:51,506 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:51,507 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:53:51,630 INFO L272 TraceCheckUtils]: 0: Hoare triple {1066#true} call ULTIMATE.init(); {1066#true} is VALID [2022-04-15 08:53:51,630 INFO L290 TraceCheckUtils]: 1: Hoare triple {1066#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);~counter~0 := 0; {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,631 INFO L290 TraceCheckUtils]: 2: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,631 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1074#(<= ~counter~0 0)} {1066#true} #108#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,632 INFO L272 TraceCheckUtils]: 4: Hoare triple {1074#(<= ~counter~0 0)} call #t~ret9 := main(); {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,632 INFO L290 TraceCheckUtils]: 5: Hoare triple {1074#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,632 INFO L272 TraceCheckUtils]: 6: Hoare triple {1074#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,634 INFO L290 TraceCheckUtils]: 7: Hoare triple {1074#(<= ~counter~0 0)} ~cond := #in~cond; {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,635 INFO L290 TraceCheckUtils]: 8: Hoare triple {1074#(<= ~counter~0 0)} assume !(0 == ~cond); {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,635 INFO L290 TraceCheckUtils]: 9: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,635 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1074#(<= ~counter~0 0)} {1074#(<= ~counter~0 0)} #94#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,636 INFO L272 TraceCheckUtils]: 11: Hoare triple {1074#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,636 INFO L290 TraceCheckUtils]: 12: Hoare triple {1074#(<= ~counter~0 0)} ~cond := #in~cond; {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,636 INFO L290 TraceCheckUtils]: 13: Hoare triple {1074#(<= ~counter~0 0)} assume !(0 == ~cond); {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,637 INFO L290 TraceCheckUtils]: 14: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,637 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1074#(<= ~counter~0 0)} {1074#(<= ~counter~0 0)} #96#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,637 INFO L290 TraceCheckUtils]: 16: Hoare triple {1074#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1074#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:51,638 INFO L290 TraceCheckUtils]: 17: Hoare triple {1074#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1123#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:51,638 INFO L290 TraceCheckUtils]: 18: Hoare triple {1123#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1123#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:51,639 INFO L290 TraceCheckUtils]: 19: Hoare triple {1123#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1123#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:51,639 INFO L290 TraceCheckUtils]: 20: Hoare triple {1123#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1133#(<= |main_#t~post7| 1)} is VALID [2022-04-15 08:53:51,639 INFO L290 TraceCheckUtils]: 21: Hoare triple {1133#(<= |main_#t~post7| 1)} assume !(#t~post7 < 20);havoc #t~post7; {1067#false} is VALID [2022-04-15 08:53:51,641 INFO L290 TraceCheckUtils]: 22: Hoare triple {1067#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; {1067#false} is VALID [2022-04-15 08:53:51,642 INFO L290 TraceCheckUtils]: 23: Hoare triple {1067#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1067#false} is VALID [2022-04-15 08:53:51,642 INFO L290 TraceCheckUtils]: 24: Hoare triple {1067#false} assume !(#t~post6 < 20);havoc #t~post6; {1067#false} is VALID [2022-04-15 08:53:51,642 INFO L272 TraceCheckUtils]: 25: Hoare triple {1067#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)); {1067#false} is VALID [2022-04-15 08:53:51,642 INFO L290 TraceCheckUtils]: 26: Hoare triple {1067#false} ~cond := #in~cond; {1067#false} is VALID [2022-04-15 08:53:51,642 INFO L290 TraceCheckUtils]: 27: Hoare triple {1067#false} assume 0 == ~cond; {1067#false} is VALID [2022-04-15 08:53:51,642 INFO L290 TraceCheckUtils]: 28: Hoare triple {1067#false} assume !false; {1067#false} is VALID [2022-04-15 08:53:51,643 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:53:51,643 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:53:51,643 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:53:51,643 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [170916145] [2022-04-15 08:53:51,643 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:53:51,643 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1346805614] [2022-04-15 08:53:51,643 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1346805614] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:51,643 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:51,644 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:53:51,644 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:53:51,644 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [853206245] [2022-04-15 08:53:51,644 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [853206245] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:51,644 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:51,644 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:53:51,646 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [43819244] [2022-04-15 08:53:51,646 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:53:51,646 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-15 08:53:51,646 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:53:51,646 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:51,662 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:51,662 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:53:51,662 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:51,663 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:53:51,663 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 08:53:51,663 INFO L87 Difference]: Start difference. First operand 53 states and 70 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:51,772 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:51,772 INFO L93 Difference]: Finished difference Result 77 states and 104 transitions. [2022-04-15 08:53:51,772 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 08:53:51,773 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-15 08:53:51,773 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:53:51,773 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:51,774 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-15 08:53:51,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:51,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-15 08:53:51,776 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 82 transitions. [2022-04-15 08:53:51,823 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:51,825 INFO L225 Difference]: With dead ends: 77 [2022-04-15 08:53:51,825 INFO L226 Difference]: Without dead ends: 55 [2022-04-15 08:53:51,825 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 08:53:51,826 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:53:51,826 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 139 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:53:51,826 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-15 08:53:51,841 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 55. [2022-04-15 08:53:51,841 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:53:51,842 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:51,842 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:51,842 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:51,844 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:51,844 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-15 08:53:51,844 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-15 08:53:51,845 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:51,845 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:51,845 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 55 states. [2022-04-15 08:53:51,845 INFO L87 Difference]: Start difference. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 55 states. [2022-04-15 08:53:51,847 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:51,847 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-15 08:53:51,848 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-15 08:53:51,848 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:51,848 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:51,848 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:53:51,848 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:53:51,848 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:51,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 72 transitions. [2022-04-15 08:53:51,850 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 72 transitions. Word has length 29 [2022-04-15 08:53:51,851 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:53:51,851 INFO L478 AbstractCegarLoop]: Abstraction has 55 states and 72 transitions. [2022-04-15 08:53:51,851 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:51,851 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 72 transitions. [2022-04-15 08:53:51,902 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-15 08:53:51,902 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-15 08:53:51,903 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-15 08:53:51,903 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:53:51,903 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:53:51,921 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-15 08:53:52,110 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-15 08:53:52,110 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:53:52,111 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:53:52,111 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 1 times [2022-04-15 08:53:52,111 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:52,111 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2093886170] [2022-04-15 08:53:52,111 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:53:52,111 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 2 times [2022-04-15 08:53:52,112 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:53:52,112 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [625401630] [2022-04-15 08:53:52,112 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:53:52,112 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:53:52,147 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:53:52,147 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [543484453] [2022-04-15 08:53:52,147 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:53:52,147 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:53:52,147 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:53:52,155 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-15 08:53:52,156 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-15 08:53:52,201 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:53:52,201 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:53:52,202 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 08:53:52,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:52,213 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:53:52,381 INFO L272 TraceCheckUtils]: 0: Hoare triple {1531#true} call ULTIMATE.init(); {1531#true} is VALID [2022-04-15 08:53:52,382 INFO L290 TraceCheckUtils]: 1: Hoare triple {1531#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);~counter~0 := 0; {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,382 INFO L290 TraceCheckUtils]: 2: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,383 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1539#(<= ~counter~0 0)} {1531#true} #108#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,383 INFO L272 TraceCheckUtils]: 4: Hoare triple {1539#(<= ~counter~0 0)} call #t~ret9 := main(); {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,383 INFO L290 TraceCheckUtils]: 5: Hoare triple {1539#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,385 INFO L272 TraceCheckUtils]: 6: Hoare triple {1539#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,385 INFO L290 TraceCheckUtils]: 7: Hoare triple {1539#(<= ~counter~0 0)} ~cond := #in~cond; {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,386 INFO L290 TraceCheckUtils]: 8: Hoare triple {1539#(<= ~counter~0 0)} assume !(0 == ~cond); {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,395 INFO L290 TraceCheckUtils]: 9: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,406 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1539#(<= ~counter~0 0)} {1539#(<= ~counter~0 0)} #94#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,408 INFO L272 TraceCheckUtils]: 11: Hoare triple {1539#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,411 INFO L290 TraceCheckUtils]: 12: Hoare triple {1539#(<= ~counter~0 0)} ~cond := #in~cond; {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,411 INFO L290 TraceCheckUtils]: 13: Hoare triple {1539#(<= ~counter~0 0)} assume !(0 == ~cond); {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,412 INFO L290 TraceCheckUtils]: 14: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,412 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1539#(<= ~counter~0 0)} {1539#(<= ~counter~0 0)} #96#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,413 INFO L290 TraceCheckUtils]: 16: Hoare triple {1539#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1539#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:52,413 INFO L290 TraceCheckUtils]: 17: Hoare triple {1539#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1588#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:52,414 INFO L290 TraceCheckUtils]: 18: Hoare triple {1588#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1588#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:52,414 INFO L290 TraceCheckUtils]: 19: Hoare triple {1588#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1588#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:52,414 INFO L290 TraceCheckUtils]: 20: Hoare triple {1588#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1598#(<= ~counter~0 2)} is VALID [2022-04-15 08:53:52,415 INFO L290 TraceCheckUtils]: 21: Hoare triple {1598#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {1598#(<= ~counter~0 2)} is VALID [2022-04-15 08:53:52,415 INFO L290 TraceCheckUtils]: 22: Hoare triple {1598#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {1598#(<= ~counter~0 2)} is VALID [2022-04-15 08:53:52,415 INFO L290 TraceCheckUtils]: 23: Hoare triple {1598#(<= ~counter~0 2)} ~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; {1598#(<= ~counter~0 2)} is VALID [2022-04-15 08:53:52,416 INFO L290 TraceCheckUtils]: 24: Hoare triple {1598#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1611#(<= |main_#t~post6| 2)} is VALID [2022-04-15 08:53:52,416 INFO L290 TraceCheckUtils]: 25: Hoare triple {1611#(<= |main_#t~post6| 2)} assume !(#t~post6 < 20);havoc #t~post6; {1532#false} is VALID [2022-04-15 08:53:52,416 INFO L272 TraceCheckUtils]: 26: Hoare triple {1532#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)); {1532#false} is VALID [2022-04-15 08:53:52,416 INFO L290 TraceCheckUtils]: 27: Hoare triple {1532#false} ~cond := #in~cond; {1532#false} is VALID [2022-04-15 08:53:52,417 INFO L290 TraceCheckUtils]: 28: Hoare triple {1532#false} assume 0 == ~cond; {1532#false} is VALID [2022-04-15 08:53:52,417 INFO L290 TraceCheckUtils]: 29: Hoare triple {1532#false} assume !false; {1532#false} is VALID [2022-04-15 08:53:52,417 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:53:52,417 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:53:52,616 INFO L290 TraceCheckUtils]: 29: Hoare triple {1532#false} assume !false; {1532#false} is VALID [2022-04-15 08:53:52,616 INFO L290 TraceCheckUtils]: 28: Hoare triple {1532#false} assume 0 == ~cond; {1532#false} is VALID [2022-04-15 08:53:52,616 INFO L290 TraceCheckUtils]: 27: Hoare triple {1532#false} ~cond := #in~cond; {1532#false} is VALID [2022-04-15 08:53:52,616 INFO L272 TraceCheckUtils]: 26: Hoare triple {1532#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)); {1532#false} is VALID [2022-04-15 08:53:52,616 INFO L290 TraceCheckUtils]: 25: Hoare triple {1639#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {1532#false} is VALID [2022-04-15 08:53:52,617 INFO L290 TraceCheckUtils]: 24: Hoare triple {1643#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1639#(< |main_#t~post6| 20)} is VALID [2022-04-15 08:53:52,617 INFO L290 TraceCheckUtils]: 23: Hoare triple {1643#(< ~counter~0 20)} ~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; {1643#(< ~counter~0 20)} is VALID [2022-04-15 08:53:52,618 INFO L290 TraceCheckUtils]: 22: Hoare triple {1643#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {1643#(< ~counter~0 20)} is VALID [2022-04-15 08:53:52,618 INFO L290 TraceCheckUtils]: 21: Hoare triple {1643#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {1643#(< ~counter~0 20)} is VALID [2022-04-15 08:53:52,618 INFO L290 TraceCheckUtils]: 20: Hoare triple {1656#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1643#(< ~counter~0 20)} is VALID [2022-04-15 08:53:52,619 INFO L290 TraceCheckUtils]: 19: Hoare triple {1656#(< ~counter~0 19)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1656#(< ~counter~0 19)} is VALID [2022-04-15 08:53:52,619 INFO L290 TraceCheckUtils]: 18: Hoare triple {1656#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {1656#(< ~counter~0 19)} is VALID [2022-04-15 08:53:52,619 INFO L290 TraceCheckUtils]: 17: Hoare triple {1666#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1656#(< ~counter~0 19)} is VALID [2022-04-15 08:53:52,620 INFO L290 TraceCheckUtils]: 16: Hoare triple {1666#(< ~counter~0 18)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1666#(< ~counter~0 18)} is VALID [2022-04-15 08:53:52,620 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1531#true} {1666#(< ~counter~0 18)} #96#return; {1666#(< ~counter~0 18)} is VALID [2022-04-15 08:53:52,620 INFO L290 TraceCheckUtils]: 14: Hoare triple {1531#true} assume true; {1531#true} is VALID [2022-04-15 08:53:52,620 INFO L290 TraceCheckUtils]: 13: Hoare triple {1531#true} assume !(0 == ~cond); {1531#true} is VALID [2022-04-15 08:53:52,621 INFO L290 TraceCheckUtils]: 12: Hoare triple {1531#true} ~cond := #in~cond; {1531#true} is VALID [2022-04-15 08:53:52,621 INFO L272 TraceCheckUtils]: 11: Hoare triple {1666#(< ~counter~0 18)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1531#true} is VALID [2022-04-15 08:53:52,621 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1531#true} {1666#(< ~counter~0 18)} #94#return; {1666#(< ~counter~0 18)} is VALID [2022-04-15 08:53:52,621 INFO L290 TraceCheckUtils]: 9: Hoare triple {1531#true} assume true; {1531#true} is VALID [2022-04-15 08:53:52,621 INFO L290 TraceCheckUtils]: 8: Hoare triple {1531#true} assume !(0 == ~cond); {1531#true} is VALID [2022-04-15 08:53:52,621 INFO L290 TraceCheckUtils]: 7: Hoare triple {1531#true} ~cond := #in~cond; {1531#true} is VALID [2022-04-15 08:53:52,622 INFO L272 TraceCheckUtils]: 6: Hoare triple {1666#(< ~counter~0 18)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1531#true} is VALID [2022-04-15 08:53:52,622 INFO L290 TraceCheckUtils]: 5: Hoare triple {1666#(< ~counter~0 18)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1666#(< ~counter~0 18)} is VALID [2022-04-15 08:53:52,622 INFO L272 TraceCheckUtils]: 4: Hoare triple {1666#(< ~counter~0 18)} call #t~ret9 := main(); {1666#(< ~counter~0 18)} is VALID [2022-04-15 08:53:52,622 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1666#(< ~counter~0 18)} {1531#true} #108#return; {1666#(< ~counter~0 18)} is VALID [2022-04-15 08:53:52,623 INFO L290 TraceCheckUtils]: 2: Hoare triple {1666#(< ~counter~0 18)} assume true; {1666#(< ~counter~0 18)} is VALID [2022-04-15 08:53:52,623 INFO L290 TraceCheckUtils]: 1: Hoare triple {1531#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);~counter~0 := 0; {1666#(< ~counter~0 18)} is VALID [2022-04-15 08:53:52,623 INFO L272 TraceCheckUtils]: 0: Hoare triple {1531#true} call ULTIMATE.init(); {1531#true} is VALID [2022-04-15 08:53:52,624 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:53:52,624 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:53:52,624 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [625401630] [2022-04-15 08:53:52,624 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:53:52,624 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [543484453] [2022-04-15 08:53:52,624 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [543484453] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:53:52,624 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:53:52,624 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-15 08:53:52,625 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:53:52,625 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2093886170] [2022-04-15 08:53:52,625 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2093886170] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:52,625 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:52,625 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 08:53:52,625 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2151277] [2022-04-15 08:53:52,625 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:53:52,625 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 30 [2022-04-15 08:53:52,626 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:53:52,626 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:52,642 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:52,642 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 08:53:52,642 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:52,642 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 08:53:52,642 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-15 08:53:52,643 INFO L87 Difference]: Start difference. First operand 55 states and 72 transitions. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:52,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:52,780 INFO L93 Difference]: Finished difference Result 67 states and 85 transitions. [2022-04-15 08:53:52,781 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-15 08:53:52,781 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 30 [2022-04-15 08:53:52,781 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:53:52,781 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:52,782 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 63 transitions. [2022-04-15 08:53:52,782 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:52,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 63 transitions. [2022-04-15 08:53:52,783 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 63 transitions. [2022-04-15 08:53:52,821 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:52,822 INFO L225 Difference]: With dead ends: 67 [2022-04-15 08:53:52,823 INFO L226 Difference]: Without dead ends: 60 [2022-04-15 08:53:52,823 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=42, Invalid=68, Unknown=0, NotChecked=0, Total=110 [2022-04-15 08:53:52,825 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 8 mSDsluCounter, 124 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 165 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:53:52,825 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 165 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:53:52,825 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-15 08:53:52,845 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2022-04-15 08:53:52,845 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:53:52,846 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:52,846 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:52,846 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:52,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:52,848 INFO L93 Difference]: Finished difference Result 60 states and 78 transitions. [2022-04-15 08:53:52,848 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 78 transitions. [2022-04-15 08:53:52,848 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:52,848 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:52,849 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 60 states. [2022-04-15 08:53:52,849 INFO L87 Difference]: Start difference. First operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 60 states. [2022-04-15 08:53:52,850 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:52,851 INFO L93 Difference]: Finished difference Result 60 states and 78 transitions. [2022-04-15 08:53:52,851 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 78 transitions. [2022-04-15 08:53:52,851 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:52,851 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:52,851 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:53:52,851 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:53:52,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-15 08:53:52,853 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 77 transitions. [2022-04-15 08:53:52,853 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 77 transitions. Word has length 30 [2022-04-15 08:53:52,853 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:53:52,853 INFO L478 AbstractCegarLoop]: Abstraction has 59 states and 77 transitions. [2022-04-15 08:53:52,853 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:52,853 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 77 transitions. [2022-04-15 08:53:52,907 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-15 08:53:52,908 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 77 transitions. [2022-04-15 08:53:52,908 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-15 08:53:52,908 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:53:52,908 INFO L499 BasicCegarLoop]: trace histogram [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-15 08:53:52,925 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-15 08:53:53,125 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-15 08:53:53,125 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:53:53,126 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:53:53,126 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 1 times [2022-04-15 08:53:53,126 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:53,126 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2125788941] [2022-04-15 08:53:53,126 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:53:53,126 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 2 times [2022-04-15 08:53:53,126 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:53:53,126 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [230532025] [2022-04-15 08:53:53,126 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:53:53,126 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:53:53,159 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:53:53,159 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [873902977] [2022-04-15 08:53:53,159 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:53:53,159 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:53:53,159 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:53:53,162 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-15 08:53:53,163 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-15 08:53:53,204 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:53:53,204 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:53:53,205 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 08:53:53,214 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:53,215 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:53:53,337 INFO L272 TraceCheckUtils]: 0: Hoare triple {2094#true} call ULTIMATE.init(); {2094#true} is VALID [2022-04-15 08:53:53,338 INFO L290 TraceCheckUtils]: 1: Hoare triple {2094#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);~counter~0 := 0; {2094#true} is VALID [2022-04-15 08:53:53,338 INFO L290 TraceCheckUtils]: 2: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-15 08:53:53,338 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2094#true} {2094#true} #108#return; {2094#true} is VALID [2022-04-15 08:53:53,338 INFO L272 TraceCheckUtils]: 4: Hoare triple {2094#true} call #t~ret9 := main(); {2094#true} is VALID [2022-04-15 08:53:53,338 INFO L290 TraceCheckUtils]: 5: Hoare triple {2094#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2094#true} is VALID [2022-04-15 08:53:53,338 INFO L272 TraceCheckUtils]: 6: Hoare triple {2094#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-15 08:53:53,338 INFO L290 TraceCheckUtils]: 7: Hoare triple {2094#true} ~cond := #in~cond; {2120#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 08:53:53,339 INFO L290 TraceCheckUtils]: 8: Hoare triple {2120#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:53:53,339 INFO L290 TraceCheckUtils]: 9: Hoare triple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:53:53,339 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} {2094#true} #94#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-15 08:53:53,340 INFO L272 TraceCheckUtils]: 11: Hoare triple {2131#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-15 08:53:53,340 INFO L290 TraceCheckUtils]: 12: Hoare triple {2094#true} ~cond := #in~cond; {2094#true} is VALID [2022-04-15 08:53:53,340 INFO L290 TraceCheckUtils]: 13: Hoare triple {2094#true} assume !(0 == ~cond); {2094#true} is VALID [2022-04-15 08:53:53,340 INFO L290 TraceCheckUtils]: 14: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-15 08:53:53,340 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2094#true} {2131#(<= 1 main_~x~0)} #96#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-15 08:53:53,341 INFO L290 TraceCheckUtils]: 16: Hoare triple {2131#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2150#(<= 1 main_~a~0)} is VALID [2022-04-15 08:53:53,341 INFO L290 TraceCheckUtils]: 17: Hoare triple {2150#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-15 08:53:53,341 INFO L290 TraceCheckUtils]: 18: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-15 08:53:53,341 INFO L290 TraceCheckUtils]: 19: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2160#(<= 1 main_~c~0)} is VALID [2022-04-15 08:53:53,342 INFO L290 TraceCheckUtils]: 20: Hoare triple {2160#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-15 08:53:53,342 INFO L290 TraceCheckUtils]: 21: Hoare triple {2160#(<= 1 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-15 08:53:53,342 INFO L290 TraceCheckUtils]: 22: Hoare triple {2160#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2160#(<= 1 main_~c~0)} is VALID [2022-04-15 08:53:53,343 INFO L290 TraceCheckUtils]: 23: Hoare triple {2160#(<= 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; {2173#(<= 1 main_~b~0)} is VALID [2022-04-15 08:53:53,343 INFO L290 TraceCheckUtils]: 24: Hoare triple {2173#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-15 08:53:53,343 INFO L290 TraceCheckUtils]: 25: Hoare triple {2173#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-15 08:53:53,344 INFO L290 TraceCheckUtils]: 26: Hoare triple {2173#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2095#false} is VALID [2022-04-15 08:53:53,344 INFO L272 TraceCheckUtils]: 27: Hoare triple {2095#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)); {2095#false} is VALID [2022-04-15 08:53:53,344 INFO L290 TraceCheckUtils]: 28: Hoare triple {2095#false} ~cond := #in~cond; {2095#false} is VALID [2022-04-15 08:53:53,344 INFO L290 TraceCheckUtils]: 29: Hoare triple {2095#false} assume 0 == ~cond; {2095#false} is VALID [2022-04-15 08:53:53,344 INFO L290 TraceCheckUtils]: 30: Hoare triple {2095#false} assume !false; {2095#false} is VALID [2022-04-15 08:53:53,344 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 08:53:53,344 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:53:53,516 INFO L290 TraceCheckUtils]: 30: Hoare triple {2095#false} assume !false; {2095#false} is VALID [2022-04-15 08:53:53,517 INFO L290 TraceCheckUtils]: 29: Hoare triple {2095#false} assume 0 == ~cond; {2095#false} is VALID [2022-04-15 08:53:53,517 INFO L290 TraceCheckUtils]: 28: Hoare triple {2095#false} ~cond := #in~cond; {2095#false} is VALID [2022-04-15 08:53:53,517 INFO L272 TraceCheckUtils]: 27: Hoare triple {2095#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)); {2095#false} is VALID [2022-04-15 08:53:53,517 INFO L290 TraceCheckUtils]: 26: Hoare triple {2173#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2095#false} is VALID [2022-04-15 08:53:53,518 INFO L290 TraceCheckUtils]: 25: Hoare triple {2173#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-15 08:53:53,518 INFO L290 TraceCheckUtils]: 24: Hoare triple {2173#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-15 08:53:53,518 INFO L290 TraceCheckUtils]: 23: Hoare triple {2160#(<= 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; {2173#(<= 1 main_~b~0)} is VALID [2022-04-15 08:53:53,519 INFO L290 TraceCheckUtils]: 22: Hoare triple {2160#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2160#(<= 1 main_~c~0)} is VALID [2022-04-15 08:53:53,519 INFO L290 TraceCheckUtils]: 21: Hoare triple {2160#(<= 1 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-15 08:53:53,519 INFO L290 TraceCheckUtils]: 20: Hoare triple {2160#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-15 08:53:53,520 INFO L290 TraceCheckUtils]: 19: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2160#(<= 1 main_~c~0)} is VALID [2022-04-15 08:53:53,520 INFO L290 TraceCheckUtils]: 18: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-15 08:53:53,520 INFO L290 TraceCheckUtils]: 17: Hoare triple {2150#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-15 08:53:53,520 INFO L290 TraceCheckUtils]: 16: Hoare triple {2131#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2150#(<= 1 main_~a~0)} is VALID [2022-04-15 08:53:53,521 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2094#true} {2131#(<= 1 main_~x~0)} #96#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-15 08:53:53,521 INFO L290 TraceCheckUtils]: 14: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-15 08:53:53,521 INFO L290 TraceCheckUtils]: 13: Hoare triple {2094#true} assume !(0 == ~cond); {2094#true} is VALID [2022-04-15 08:53:53,521 INFO L290 TraceCheckUtils]: 12: Hoare triple {2094#true} ~cond := #in~cond; {2094#true} is VALID [2022-04-15 08:53:53,521 INFO L272 TraceCheckUtils]: 11: Hoare triple {2131#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-15 08:53:53,522 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} {2094#true} #94#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-15 08:53:53,522 INFO L290 TraceCheckUtils]: 9: Hoare triple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:53:53,522 INFO L290 TraceCheckUtils]: 8: Hoare triple {2264#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:53:53,523 INFO L290 TraceCheckUtils]: 7: Hoare triple {2094#true} ~cond := #in~cond; {2264#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-15 08:53:53,523 INFO L272 TraceCheckUtils]: 6: Hoare triple {2094#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-15 08:53:53,523 INFO L290 TraceCheckUtils]: 5: Hoare triple {2094#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2094#true} is VALID [2022-04-15 08:53:53,523 INFO L272 TraceCheckUtils]: 4: Hoare triple {2094#true} call #t~ret9 := main(); {2094#true} is VALID [2022-04-15 08:53:53,523 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2094#true} {2094#true} #108#return; {2094#true} is VALID [2022-04-15 08:53:53,523 INFO L290 TraceCheckUtils]: 2: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-15 08:53:53,523 INFO L290 TraceCheckUtils]: 1: Hoare triple {2094#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);~counter~0 := 0; {2094#true} is VALID [2022-04-15 08:53:53,523 INFO L272 TraceCheckUtils]: 0: Hoare triple {2094#true} call ULTIMATE.init(); {2094#true} is VALID [2022-04-15 08:53:53,524 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 08:53:53,524 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:53:53,524 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [230532025] [2022-04-15 08:53:53,524 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:53:53,524 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [873902977] [2022-04-15 08:53:53,524 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [873902977] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:53:53,524 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:53:53,524 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-15 08:53:53,524 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:53:53,524 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2125788941] [2022-04-15 08:53:53,525 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2125788941] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:53,525 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:53,525 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 08:53:53,525 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [810807290] [2022-04-15 08:53:53,525 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:53:53,525 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-15 08:53:53,525 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:53:53,525 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:53,544 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:53,545 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 08:53:53,545 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:53,545 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 08:53:53,545 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-15 08:53:53,545 INFO L87 Difference]: Start difference. First operand 59 states and 77 transitions. Second operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:54,286 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:54,286 INFO L93 Difference]: Finished difference Result 138 states and 201 transitions. [2022-04-15 08:53:54,286 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-15 08:53:54,286 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-15 08:53:54,287 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:53:54,287 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:54,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-15 08:53:54,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:54,291 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-15 08:53:54,292 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 155 transitions. [2022-04-15 08:53:54,396 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:54,399 INFO L225 Difference]: With dead ends: 138 [2022-04-15 08:53:54,399 INFO L226 Difference]: Without dead ends: 131 [2022-04-15 08:53:54,399 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 68 GetRequests, 53 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=180, Unknown=0, NotChecked=0, Total=240 [2022-04-15 08:53:54,400 INFO L913 BasicCegarLoop]: 64 mSDtfsCounter, 115 mSDsluCounter, 234 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 63 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 119 SdHoareTripleChecker+Valid, 298 SdHoareTripleChecker+Invalid, 217 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 63 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 08:53:54,400 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [119 Valid, 298 Invalid, 217 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [63 Valid, 154 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 08:53:54,400 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-15 08:53:54,503 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 88. [2022-04-15 08:53:54,503 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:53:54,504 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:53:54,504 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:53:54,504 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:53:54,509 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:54,509 INFO L93 Difference]: Finished difference Result 131 states and 193 transitions. [2022-04-15 08:53:54,509 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 193 transitions. [2022-04-15 08:53:54,510 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:54,510 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:54,510 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 131 states. [2022-04-15 08:53:54,510 INFO L87 Difference]: Start difference. First operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 131 states. [2022-04-15 08:53:54,515 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:54,515 INFO L93 Difference]: Finished difference Result 131 states and 193 transitions. [2022-04-15 08:53:54,515 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 193 transitions. [2022-04-15 08:53:54,516 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:54,516 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:54,516 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:53:54,516 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:53:54,516 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:53:54,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 122 transitions. [2022-04-15 08:53:54,518 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 122 transitions. Word has length 31 [2022-04-15 08:53:54,519 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:53:54,519 INFO L478 AbstractCegarLoop]: Abstraction has 88 states and 122 transitions. [2022-04-15 08:53:54,519 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:54,519 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 88 states and 122 transitions. [2022-04-15 08:53:54,620 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-15 08:53:54,620 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 122 transitions. [2022-04-15 08:53:54,621 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-15 08:53:54,621 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:53:54,621 INFO L499 BasicCegarLoop]: trace histogram [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-15 08:53:54,660 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-15 08:53:54,835 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-15 08:53:54,836 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:53:54,836 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:53:54,836 INFO L85 PathProgramCache]: Analyzing trace with hash 1911367052, now seen corresponding path program 1 times [2022-04-15 08:53:54,836 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:54,836 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1363018502] [2022-04-15 08:53:54,836 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:53:54,836 INFO L85 PathProgramCache]: Analyzing trace with hash 1911367052, now seen corresponding path program 2 times [2022-04-15 08:53:54,837 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:53:54,837 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1585691055] [2022-04-15 08:53:54,837 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:53:54,837 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:53:54,851 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:53:54,851 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1631800214] [2022-04-15 08:53:54,851 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:53:54,852 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:53:54,852 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:53:54,852 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-15 08:53:54,857 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-15 08:53:54,909 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:53:54,909 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:53:54,909 INFO L263 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 08:53:54,918 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:54,919 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:53:55,086 INFO L272 TraceCheckUtils]: 0: Hoare triple {3016#true} call ULTIMATE.init(); {3016#true} is VALID [2022-04-15 08:53:55,087 INFO L290 TraceCheckUtils]: 1: Hoare triple {3016#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);~counter~0 := 0; {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,087 INFO L290 TraceCheckUtils]: 2: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,088 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3024#(<= ~counter~0 0)} {3016#true} #108#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,088 INFO L272 TraceCheckUtils]: 4: Hoare triple {3024#(<= ~counter~0 0)} call #t~ret9 := main(); {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,088 INFO L290 TraceCheckUtils]: 5: Hoare triple {3024#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,089 INFO L272 TraceCheckUtils]: 6: Hoare triple {3024#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,089 INFO L290 TraceCheckUtils]: 7: Hoare triple {3024#(<= ~counter~0 0)} ~cond := #in~cond; {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,089 INFO L290 TraceCheckUtils]: 8: Hoare triple {3024#(<= ~counter~0 0)} assume !(0 == ~cond); {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,090 INFO L290 TraceCheckUtils]: 9: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,090 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3024#(<= ~counter~0 0)} {3024#(<= ~counter~0 0)} #94#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,090 INFO L272 TraceCheckUtils]: 11: Hoare triple {3024#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,095 INFO L290 TraceCheckUtils]: 12: Hoare triple {3024#(<= ~counter~0 0)} ~cond := #in~cond; {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,096 INFO L290 TraceCheckUtils]: 13: Hoare triple {3024#(<= ~counter~0 0)} assume !(0 == ~cond); {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,097 INFO L290 TraceCheckUtils]: 14: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,097 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3024#(<= ~counter~0 0)} {3024#(<= ~counter~0 0)} #96#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,097 INFO L290 TraceCheckUtils]: 16: Hoare triple {3024#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3024#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:55,098 INFO L290 TraceCheckUtils]: 17: Hoare triple {3024#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3073#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:55,098 INFO L290 TraceCheckUtils]: 18: Hoare triple {3073#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {3073#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:55,099 INFO L290 TraceCheckUtils]: 19: Hoare triple {3073#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3073#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:55,099 INFO L290 TraceCheckUtils]: 20: Hoare triple {3073#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3083#(<= ~counter~0 2)} is VALID [2022-04-15 08:53:55,099 INFO L290 TraceCheckUtils]: 21: Hoare triple {3083#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {3083#(<= ~counter~0 2)} is VALID [2022-04-15 08:53:55,100 INFO L290 TraceCheckUtils]: 22: Hoare triple {3083#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3083#(<= ~counter~0 2)} is VALID [2022-04-15 08:53:55,100 INFO L290 TraceCheckUtils]: 23: Hoare triple {3083#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {3093#(<= |main_#t~post8| 2)} is VALID [2022-04-15 08:53:55,101 INFO L290 TraceCheckUtils]: 24: Hoare triple {3093#(<= |main_#t~post8| 2)} assume !(#t~post8 < 20);havoc #t~post8; {3017#false} is VALID [2022-04-15 08:53:55,101 INFO L290 TraceCheckUtils]: 25: Hoare triple {3017#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {3017#false} is VALID [2022-04-15 08:53:55,101 INFO L290 TraceCheckUtils]: 26: Hoare triple {3017#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3017#false} is VALID [2022-04-15 08:53:55,101 INFO L290 TraceCheckUtils]: 27: Hoare triple {3017#false} assume !(#t~post7 < 20);havoc #t~post7; {3017#false} is VALID [2022-04-15 08:53:55,101 INFO L290 TraceCheckUtils]: 28: Hoare triple {3017#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; {3017#false} is VALID [2022-04-15 08:53:55,101 INFO L290 TraceCheckUtils]: 29: Hoare triple {3017#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3017#false} is VALID [2022-04-15 08:53:55,101 INFO L290 TraceCheckUtils]: 30: Hoare triple {3017#false} assume !(#t~post6 < 20);havoc #t~post6; {3017#false} is VALID [2022-04-15 08:53:55,101 INFO L272 TraceCheckUtils]: 31: Hoare triple {3017#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)); {3017#false} is VALID [2022-04-15 08:53:55,102 INFO L290 TraceCheckUtils]: 32: Hoare triple {3017#false} ~cond := #in~cond; {3017#false} is VALID [2022-04-15 08:53:55,102 INFO L290 TraceCheckUtils]: 33: Hoare triple {3017#false} assume 0 == ~cond; {3017#false} is VALID [2022-04-15 08:53:55,102 INFO L290 TraceCheckUtils]: 34: Hoare triple {3017#false} assume !false; {3017#false} is VALID [2022-04-15 08:53:55,102 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:53:55,102 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:53:55,102 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:53:55,102 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1585691055] [2022-04-15 08:53:55,102 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:53:55,102 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1631800214] [2022-04-15 08:53:55,102 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1631800214] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:55,102 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:55,103 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 08:53:55,103 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:53:55,103 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1363018502] [2022-04-15 08:53:55,103 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1363018502] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:55,103 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:55,103 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 08:53:55,103 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [342118969] [2022-04-15 08:53:55,103 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:53:55,104 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-15 08:53:55,104 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:53:55,104 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:55,124 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:55,124 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 08:53:55,124 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:55,124 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 08:53:55,124 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-15 08:53:55,125 INFO L87 Difference]: Start difference. First operand 88 states and 122 transitions. Second operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:55,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:55,328 INFO L93 Difference]: Finished difference Result 127 states and 178 transitions. [2022-04-15 08:53:55,328 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 08:53:55,328 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-15 08:53:55,328 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:53:55,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:55,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-15 08:53:55,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:55,331 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-15 08:53:55,331 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 88 transitions. [2022-04-15 08:53:55,384 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:55,385 INFO L225 Difference]: With dead ends: 127 [2022-04-15 08:53:55,385 INFO L226 Difference]: Without dead ends: 90 [2022-04-15 08:53:55,386 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-15 08:53:55,386 INFO L913 BasicCegarLoop]: 41 mSDtfsCounter, 10 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 18 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 18 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:53:55,386 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 139 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 18 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:53:55,387 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-15 08:53:55,502 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 90. [2022-04-15 08:53:55,502 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:53:55,502 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:53:55,503 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:53:55,503 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:53:55,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:55,505 INFO L93 Difference]: Finished difference Result 90 states and 124 transitions. [2022-04-15 08:53:55,505 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-15 08:53:55,505 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:55,506 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:55,506 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 90 states. [2022-04-15 08:53:55,506 INFO L87 Difference]: Start difference. First operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 90 states. [2022-04-15 08:53:55,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:55,508 INFO L93 Difference]: Finished difference Result 90 states and 124 transitions. [2022-04-15 08:53:55,508 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-15 08:53:55,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:55,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:55,509 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:53:55,509 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:53:55,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-15 08:53:55,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 124 transitions. [2022-04-15 08:53:55,511 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 124 transitions. Word has length 35 [2022-04-15 08:53:55,511 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:53:55,511 INFO L478 AbstractCegarLoop]: Abstraction has 90 states and 124 transitions. [2022-04-15 08:53:55,512 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:55,512 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 90 states and 124 transitions. [2022-04-15 08:53:55,619 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:55,619 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-15 08:53:55,620 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-15 08:53:55,620 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:53:55,620 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-15 08:53:55,637 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-15 08:53:55,837 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-15 08:53:55,837 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:53:55,838 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:53:55,838 INFO L85 PathProgramCache]: Analyzing trace with hash -304485816, now seen corresponding path program 1 times [2022-04-15 08:53:55,838 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:55,838 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [819826624] [2022-04-15 08:53:55,838 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:53:55,838 INFO L85 PathProgramCache]: Analyzing trace with hash -304485816, now seen corresponding path program 2 times [2022-04-15 08:53:55,838 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:53:55,838 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1133693257] [2022-04-15 08:53:55,838 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:53:55,839 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:53:55,854 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:53:55,854 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1372543522] [2022-04-15 08:53:55,854 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:53:55,854 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:53:55,854 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:53:55,855 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-15 08:53:55,859 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-15 08:53:55,902 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:53:55,902 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:53:55,903 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-15 08:53:55,918 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:55,919 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:53:56,103 INFO L272 TraceCheckUtils]: 0: Hoare triple {3740#true} call ULTIMATE.init(); {3740#true} is VALID [2022-04-15 08:53:56,104 INFO L290 TraceCheckUtils]: 1: Hoare triple {3740#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);~counter~0 := 0; {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,104 INFO L290 TraceCheckUtils]: 2: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,104 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3748#(<= ~counter~0 0)} {3740#true} #108#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,105 INFO L272 TraceCheckUtils]: 4: Hoare triple {3748#(<= ~counter~0 0)} call #t~ret9 := main(); {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,105 INFO L290 TraceCheckUtils]: 5: Hoare triple {3748#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,105 INFO L272 TraceCheckUtils]: 6: Hoare triple {3748#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,106 INFO L290 TraceCheckUtils]: 7: Hoare triple {3748#(<= ~counter~0 0)} ~cond := #in~cond; {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,106 INFO L290 TraceCheckUtils]: 8: Hoare triple {3748#(<= ~counter~0 0)} assume !(0 == ~cond); {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,106 INFO L290 TraceCheckUtils]: 9: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,107 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3748#(<= ~counter~0 0)} {3748#(<= ~counter~0 0)} #94#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,107 INFO L272 TraceCheckUtils]: 11: Hoare triple {3748#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,107 INFO L290 TraceCheckUtils]: 12: Hoare triple {3748#(<= ~counter~0 0)} ~cond := #in~cond; {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,108 INFO L290 TraceCheckUtils]: 13: Hoare triple {3748#(<= ~counter~0 0)} assume !(0 == ~cond); {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,108 INFO L290 TraceCheckUtils]: 14: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,108 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3748#(<= ~counter~0 0)} {3748#(<= ~counter~0 0)} #96#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,109 INFO L290 TraceCheckUtils]: 16: Hoare triple {3748#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3748#(<= ~counter~0 0)} is VALID [2022-04-15 08:53:56,109 INFO L290 TraceCheckUtils]: 17: Hoare triple {3748#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3797#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:56,109 INFO L290 TraceCheckUtils]: 18: Hoare triple {3797#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {3797#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:56,110 INFO L290 TraceCheckUtils]: 19: Hoare triple {3797#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3797#(<= ~counter~0 1)} is VALID [2022-04-15 08:53:56,110 INFO L290 TraceCheckUtils]: 20: Hoare triple {3797#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3807#(<= ~counter~0 2)} is VALID [2022-04-15 08:53:56,110 INFO L290 TraceCheckUtils]: 21: Hoare triple {3807#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {3807#(<= ~counter~0 2)} is VALID [2022-04-15 08:53:56,111 INFO L290 TraceCheckUtils]: 22: Hoare triple {3807#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {3807#(<= ~counter~0 2)} is VALID [2022-04-15 08:53:56,111 INFO L290 TraceCheckUtils]: 23: Hoare triple {3807#(<= ~counter~0 2)} ~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; {3807#(<= ~counter~0 2)} is VALID [2022-04-15 08:53:56,111 INFO L290 TraceCheckUtils]: 24: Hoare triple {3807#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3820#(<= ~counter~0 3)} is VALID [2022-04-15 08:53:56,112 INFO L290 TraceCheckUtils]: 25: Hoare triple {3820#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {3820#(<= ~counter~0 3)} is VALID [2022-04-15 08:53:56,112 INFO L290 TraceCheckUtils]: 26: Hoare triple {3820#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3820#(<= ~counter~0 3)} is VALID [2022-04-15 08:53:56,112 INFO L290 TraceCheckUtils]: 27: Hoare triple {3820#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3830#(<= |main_#t~post7| 3)} is VALID [2022-04-15 08:53:56,112 INFO L290 TraceCheckUtils]: 28: Hoare triple {3830#(<= |main_#t~post7| 3)} assume !(#t~post7 < 20);havoc #t~post7; {3741#false} is VALID [2022-04-15 08:53:56,113 INFO L290 TraceCheckUtils]: 29: Hoare triple {3741#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; {3741#false} is VALID [2022-04-15 08:53:56,113 INFO L290 TraceCheckUtils]: 30: Hoare triple {3741#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3741#false} is VALID [2022-04-15 08:53:56,113 INFO L290 TraceCheckUtils]: 31: Hoare triple {3741#false} assume !(#t~post6 < 20);havoc #t~post6; {3741#false} is VALID [2022-04-15 08:53:56,113 INFO L272 TraceCheckUtils]: 32: Hoare triple {3741#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)); {3741#false} is VALID [2022-04-15 08:53:56,113 INFO L290 TraceCheckUtils]: 33: Hoare triple {3741#false} ~cond := #in~cond; {3741#false} is VALID [2022-04-15 08:53:56,113 INFO L290 TraceCheckUtils]: 34: Hoare triple {3741#false} assume 0 == ~cond; {3741#false} is VALID [2022-04-15 08:53:56,113 INFO L290 TraceCheckUtils]: 35: Hoare triple {3741#false} assume !false; {3741#false} is VALID [2022-04-15 08:53:56,113 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:53:56,113 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:53:56,345 INFO L290 TraceCheckUtils]: 35: Hoare triple {3741#false} assume !false; {3741#false} is VALID [2022-04-15 08:53:56,346 INFO L290 TraceCheckUtils]: 34: Hoare triple {3741#false} assume 0 == ~cond; {3741#false} is VALID [2022-04-15 08:53:56,346 INFO L290 TraceCheckUtils]: 33: Hoare triple {3741#false} ~cond := #in~cond; {3741#false} is VALID [2022-04-15 08:53:56,346 INFO L272 TraceCheckUtils]: 32: Hoare triple {3741#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)); {3741#false} is VALID [2022-04-15 08:53:56,346 INFO L290 TraceCheckUtils]: 31: Hoare triple {3741#false} assume !(#t~post6 < 20);havoc #t~post6; {3741#false} is VALID [2022-04-15 08:53:56,346 INFO L290 TraceCheckUtils]: 30: Hoare triple {3741#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3741#false} is VALID [2022-04-15 08:53:56,346 INFO L290 TraceCheckUtils]: 29: Hoare triple {3741#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; {3741#false} is VALID [2022-04-15 08:53:56,347 INFO L290 TraceCheckUtils]: 28: Hoare triple {3876#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {3741#false} is VALID [2022-04-15 08:53:56,347 INFO L290 TraceCheckUtils]: 27: Hoare triple {3880#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3876#(< |main_#t~post7| 20)} is VALID [2022-04-15 08:53:56,347 INFO L290 TraceCheckUtils]: 26: Hoare triple {3880#(< ~counter~0 20)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3880#(< ~counter~0 20)} is VALID [2022-04-15 08:53:56,348 INFO L290 TraceCheckUtils]: 25: Hoare triple {3880#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {3880#(< ~counter~0 20)} is VALID [2022-04-15 08:53:56,348 INFO L290 TraceCheckUtils]: 24: Hoare triple {3890#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3880#(< ~counter~0 20)} is VALID [2022-04-15 08:53:56,349 INFO L290 TraceCheckUtils]: 23: Hoare triple {3890#(< ~counter~0 19)} ~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; {3890#(< ~counter~0 19)} is VALID [2022-04-15 08:53:56,349 INFO L290 TraceCheckUtils]: 22: Hoare triple {3890#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {3890#(< ~counter~0 19)} is VALID [2022-04-15 08:53:56,349 INFO L290 TraceCheckUtils]: 21: Hoare triple {3890#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {3890#(< ~counter~0 19)} is VALID [2022-04-15 08:53:56,350 INFO L290 TraceCheckUtils]: 20: Hoare triple {3903#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3890#(< ~counter~0 19)} is VALID [2022-04-15 08:53:56,350 INFO L290 TraceCheckUtils]: 19: Hoare triple {3903#(< ~counter~0 18)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3903#(< ~counter~0 18)} is VALID [2022-04-15 08:53:56,350 INFO L290 TraceCheckUtils]: 18: Hoare triple {3903#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {3903#(< ~counter~0 18)} is VALID [2022-04-15 08:53:56,351 INFO L290 TraceCheckUtils]: 17: Hoare triple {3913#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3903#(< ~counter~0 18)} is VALID [2022-04-15 08:53:56,351 INFO L290 TraceCheckUtils]: 16: Hoare triple {3913#(< ~counter~0 17)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3913#(< ~counter~0 17)} is VALID [2022-04-15 08:53:56,352 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3740#true} {3913#(< ~counter~0 17)} #96#return; {3913#(< ~counter~0 17)} is VALID [2022-04-15 08:53:56,352 INFO L290 TraceCheckUtils]: 14: Hoare triple {3740#true} assume true; {3740#true} is VALID [2022-04-15 08:53:56,352 INFO L290 TraceCheckUtils]: 13: Hoare triple {3740#true} assume !(0 == ~cond); {3740#true} is VALID [2022-04-15 08:53:56,352 INFO L290 TraceCheckUtils]: 12: Hoare triple {3740#true} ~cond := #in~cond; {3740#true} is VALID [2022-04-15 08:53:56,352 INFO L272 TraceCheckUtils]: 11: Hoare triple {3913#(< ~counter~0 17)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3740#true} is VALID [2022-04-15 08:53:56,353 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3740#true} {3913#(< ~counter~0 17)} #94#return; {3913#(< ~counter~0 17)} is VALID [2022-04-15 08:53:56,353 INFO L290 TraceCheckUtils]: 9: Hoare triple {3740#true} assume true; {3740#true} is VALID [2022-04-15 08:53:56,354 INFO L290 TraceCheckUtils]: 8: Hoare triple {3740#true} assume !(0 == ~cond); {3740#true} is VALID [2022-04-15 08:53:56,354 INFO L290 TraceCheckUtils]: 7: Hoare triple {3740#true} ~cond := #in~cond; {3740#true} is VALID [2022-04-15 08:53:56,354 INFO L272 TraceCheckUtils]: 6: Hoare triple {3913#(< ~counter~0 17)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3740#true} is VALID [2022-04-15 08:53:56,354 INFO L290 TraceCheckUtils]: 5: Hoare triple {3913#(< ~counter~0 17)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3913#(< ~counter~0 17)} is VALID [2022-04-15 08:53:56,355 INFO L272 TraceCheckUtils]: 4: Hoare triple {3913#(< ~counter~0 17)} call #t~ret9 := main(); {3913#(< ~counter~0 17)} is VALID [2022-04-15 08:53:56,355 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3913#(< ~counter~0 17)} {3740#true} #108#return; {3913#(< ~counter~0 17)} is VALID [2022-04-15 08:53:56,356 INFO L290 TraceCheckUtils]: 2: Hoare triple {3913#(< ~counter~0 17)} assume true; {3913#(< ~counter~0 17)} is VALID [2022-04-15 08:53:56,356 INFO L290 TraceCheckUtils]: 1: Hoare triple {3740#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);~counter~0 := 0; {3913#(< ~counter~0 17)} is VALID [2022-04-15 08:53:56,357 INFO L272 TraceCheckUtils]: 0: Hoare triple {3740#true} call ULTIMATE.init(); {3740#true} is VALID [2022-04-15 08:53:56,357 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:53:56,357 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:53:56,357 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1133693257] [2022-04-15 08:53:56,357 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:53:56,357 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1372543522] [2022-04-15 08:53:56,357 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1372543522] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:53:56,357 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:53:56,358 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-15 08:53:56,358 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:53:56,358 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [819826624] [2022-04-15 08:53:56,358 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [819826624] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:56,358 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:56,358 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 08:53:56,358 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [431638788] [2022-04-15 08:53:56,358 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:53:56,359 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-15 08:53:56,359 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:53:56,359 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:56,389 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-15 08:53:56,389 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-15 08:53:56,389 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:56,390 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-15 08:53:56,390 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-15 08:53:56,390 INFO L87 Difference]: Start difference. First operand 90 states and 124 transitions. Second operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:56,726 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:56,727 INFO L93 Difference]: Finished difference Result 163 states and 227 transitions. [2022-04-15 08:53:56,727 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 08:53:56,727 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-15 08:53:56,727 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:53:56,727 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:56,729 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-04-15 08:53:56,729 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:56,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-04-15 08:53:56,731 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 109 transitions. [2022-04-15 08:53:56,800 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:56,802 INFO L225 Difference]: With dead ends: 163 [2022-04-15 08:53:56,802 INFO L226 Difference]: Without dead ends: 112 [2022-04-15 08:53:56,803 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 61 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=96, Unknown=0, NotChecked=0, Total=156 [2022-04-15 08:53:56,803 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 34 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:53:56,803 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 180 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:53:56,804 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-04-15 08:53:56,940 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 109. [2022-04-15 08:53:56,941 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:53:56,941 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 08:53:56,941 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 08:53:56,942 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 08:53:56,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:56,944 INFO L93 Difference]: Finished difference Result 112 states and 149 transitions. [2022-04-15 08:53:56,944 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 149 transitions. [2022-04-15 08:53:56,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:56,945 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:56,945 INFO L74 IsIncluded]: Start isIncluded. First operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 112 states. [2022-04-15 08:53:56,945 INFO L87 Difference]: Start difference. First operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 112 states. [2022-04-15 08:53:56,948 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:56,948 INFO L93 Difference]: Finished difference Result 112 states and 149 transitions. [2022-04-15 08:53:56,948 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 149 transitions. [2022-04-15 08:53:56,948 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:56,948 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:56,948 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:53:56,948 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:53:56,949 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 08:53:56,952 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 147 transitions. [2022-04-15 08:53:56,952 INFO L78 Accepts]: Start accepts. Automaton has 109 states and 147 transitions. Word has length 36 [2022-04-15 08:53:56,952 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:53:56,952 INFO L478 AbstractCegarLoop]: Abstraction has 109 states and 147 transitions. [2022-04-15 08:53:56,952 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:56,952 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 109 states and 147 transitions. [2022-04-15 08:53:57,079 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 147 edges. 147 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:57,079 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 147 transitions. [2022-04-15 08:53:57,079 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-15 08:53:57,079 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:53:57,080 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:53:57,099 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-15 08:53:57,280 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-15 08:53:57,280 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:53:57,281 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:53:57,281 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 1 times [2022-04-15 08:53:57,281 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:57,281 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2099128785] [2022-04-15 08:53:57,281 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:53:57,281 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 2 times [2022-04-15 08:53:57,281 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:53:57,281 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1969454070] [2022-04-15 08:53:57,281 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:53:57,281 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:53:57,292 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:53:57,292 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1020345229] [2022-04-15 08:53:57,292 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:53:57,292 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:53:57,293 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:53:57,293 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-15 08:53:57,311 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-15 08:53:57,348 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:53:57,349 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:53:57,349 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-15 08:53:57,356 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:57,358 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:53:57,688 INFO L272 TraceCheckUtils]: 0: Hoare triple {4737#true} call ULTIMATE.init(); {4737#true} is VALID [2022-04-15 08:53:57,688 INFO L290 TraceCheckUtils]: 1: Hoare triple {4737#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);~counter~0 := 0; {4737#true} is VALID [2022-04-15 08:53:57,688 INFO L290 TraceCheckUtils]: 2: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-15 08:53:57,688 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4737#true} {4737#true} #108#return; {4737#true} is VALID [2022-04-15 08:53:57,688 INFO L272 TraceCheckUtils]: 4: Hoare triple {4737#true} call #t~ret9 := main(); {4737#true} is VALID [2022-04-15 08:53:57,688 INFO L290 TraceCheckUtils]: 5: Hoare triple {4737#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4737#true} is VALID [2022-04-15 08:53:57,688 INFO L272 TraceCheckUtils]: 6: Hoare triple {4737#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-15 08:53:57,689 INFO L290 TraceCheckUtils]: 7: Hoare triple {4737#true} ~cond := #in~cond; {4763#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 08:53:57,689 INFO L290 TraceCheckUtils]: 8: Hoare triple {4763#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4767#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:53:57,689 INFO L290 TraceCheckUtils]: 9: Hoare triple {4767#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4767#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:53:57,690 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4767#(not (= |assume_abort_if_not_#in~cond| 0))} {4737#true} #94#return; {4774#(<= 1 main_~x~0)} is VALID [2022-04-15 08:53:57,690 INFO L272 TraceCheckUtils]: 11: Hoare triple {4774#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-15 08:53:57,690 INFO L290 TraceCheckUtils]: 12: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-15 08:53:57,690 INFO L290 TraceCheckUtils]: 13: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-15 08:53:57,690 INFO L290 TraceCheckUtils]: 14: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-15 08:53:57,691 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4737#true} {4774#(<= 1 main_~x~0)} #96#return; {4774#(<= 1 main_~x~0)} is VALID [2022-04-15 08:53:57,692 INFO L290 TraceCheckUtils]: 16: Hoare triple {4774#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:53:57,692 INFO L290 TraceCheckUtils]: 17: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:53:57,693 INFO L290 TraceCheckUtils]: 18: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:53:57,693 INFO L290 TraceCheckUtils]: 19: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:53:57,693 INFO L290 TraceCheckUtils]: 20: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:53:57,694 INFO L290 TraceCheckUtils]: 21: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:53:57,694 INFO L290 TraceCheckUtils]: 22: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 08:53:57,695 INFO L290 TraceCheckUtils]: 23: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~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; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 08:53:57,695 INFO L290 TraceCheckUtils]: 24: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 08:53:57,695 INFO L290 TraceCheckUtils]: 25: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 20);havoc #t~post6; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 08:53:57,696 INFO L290 TraceCheckUtils]: 26: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 08:53:57,696 INFO L290 TraceCheckUtils]: 27: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 08:53:57,697 INFO L290 TraceCheckUtils]: 28: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post7 < 20);havoc #t~post7; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 08:53:57,697 INFO L290 TraceCheckUtils]: 29: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 08:53:57,697 INFO L290 TraceCheckUtils]: 30: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 08:53:57,698 INFO L290 TraceCheckUtils]: 31: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post8 < 20);havoc #t~post8; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 08:53:57,699 INFO L272 TraceCheckUtils]: 32: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:53:57,700 INFO L290 TraceCheckUtils]: 33: Hoare triple {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4847#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:53:57,700 INFO L290 TraceCheckUtils]: 34: Hoare triple {4847#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4738#false} is VALID [2022-04-15 08:53:57,700 INFO L290 TraceCheckUtils]: 35: Hoare triple {4738#false} assume !false; {4738#false} is VALID [2022-04-15 08:53:57,700 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-15 08:53:57,700 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:53:57,893 INFO L290 TraceCheckUtils]: 35: Hoare triple {4738#false} assume !false; {4738#false} is VALID [2022-04-15 08:53:57,896 INFO L290 TraceCheckUtils]: 34: Hoare triple {4847#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4738#false} is VALID [2022-04-15 08:53:57,899 INFO L290 TraceCheckUtils]: 33: Hoare triple {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4847#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:53:57,900 INFO L272 TraceCheckUtils]: 32: Hoare triple {4863#(= 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)); {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:53:57,900 INFO L290 TraceCheckUtils]: 31: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:53:57,901 INFO L290 TraceCheckUtils]: 30: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:53:57,901 INFO L290 TraceCheckUtils]: 29: Hoare triple {4863#(= 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; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:53:57,901 INFO L290 TraceCheckUtils]: 28: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:53:57,902 INFO L290 TraceCheckUtils]: 27: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:53:57,902 INFO L290 TraceCheckUtils]: 26: Hoare triple {4863#(= 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; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:53:57,902 INFO L290 TraceCheckUtils]: 25: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:53:57,903 INFO L290 TraceCheckUtils]: 24: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:53:57,903 INFO L290 TraceCheckUtils]: 23: Hoare triple {4891#(= 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; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:53:57,903 INFO L290 TraceCheckUtils]: 22: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:53:57,904 INFO L290 TraceCheckUtils]: 21: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:53:57,904 INFO L290 TraceCheckUtils]: 20: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:53:57,904 INFO L290 TraceCheckUtils]: 19: Hoare triple {4891#(= 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; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:53:57,905 INFO L290 TraceCheckUtils]: 18: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:53:57,905 INFO L290 TraceCheckUtils]: 17: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:53:57,905 INFO L290 TraceCheckUtils]: 16: Hoare triple {4737#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:53:57,905 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4737#true} {4737#true} #96#return; {4737#true} is VALID [2022-04-15 08:53:57,905 INFO L290 TraceCheckUtils]: 14: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L290 TraceCheckUtils]: 13: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L290 TraceCheckUtils]: 12: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L272 TraceCheckUtils]: 11: Hoare triple {4737#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4737#true} {4737#true} #94#return; {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L290 TraceCheckUtils]: 9: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L290 TraceCheckUtils]: 8: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L290 TraceCheckUtils]: 7: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L272 TraceCheckUtils]: 6: Hoare triple {4737#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L290 TraceCheckUtils]: 5: Hoare triple {4737#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L272 TraceCheckUtils]: 4: Hoare triple {4737#true} call #t~ret9 := main(); {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4737#true} {4737#true} #108#return; {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L290 TraceCheckUtils]: 2: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-15 08:53:57,906 INFO L290 TraceCheckUtils]: 1: Hoare triple {4737#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);~counter~0 := 0; {4737#true} is VALID [2022-04-15 08:53:57,907 INFO L272 TraceCheckUtils]: 0: Hoare triple {4737#true} call ULTIMATE.init(); {4737#true} is VALID [2022-04-15 08:53:57,907 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:53:57,907 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:53:57,907 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1969454070] [2022-04-15 08:53:57,907 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:53:57,907 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1020345229] [2022-04-15 08:53:57,907 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1020345229] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:53:57,907 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:53:57,907 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 6] total 11 [2022-04-15 08:53:57,907 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:53:57,908 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2099128785] [2022-04-15 08:53:57,908 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2099128785] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:57,908 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:57,908 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 08:53:57,908 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1358612430] [2022-04-15 08:53:57,908 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:53:57,908 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-15 08:53:57,908 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:53:57,909 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:57,930 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-15 08:53:57,930 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 08:53:57,931 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:57,931 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 08:53:57,931 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-15 08:53:57,931 INFO L87 Difference]: Start difference. First operand 109 states and 147 transitions. Second operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:58,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:58,565 INFO L93 Difference]: Finished difference Result 154 states and 208 transitions. [2022-04-15 08:53:58,565 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 08:53:58,565 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-15 08:53:58,566 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:53:58,566 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:58,567 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-15 08:53:58,567 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:58,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-15 08:53:58,568 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 99 transitions. [2022-04-15 08:53:58,639 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:58,641 INFO L225 Difference]: With dead ends: 154 [2022-04-15 08:53:58,641 INFO L226 Difference]: Without dead ends: 152 [2022-04-15 08:53:58,642 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 61 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-15 08:53:58,642 INFO L913 BasicCegarLoop]: 64 mSDtfsCounter, 61 mSDsluCounter, 262 mSDsCounter, 0 mSdLazyCounter, 170 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 326 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 170 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:53:58,642 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [73 Valid, 326 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 170 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:53:58,642 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 152 states. [2022-04-15 08:53:58,806 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 152 to 148. [2022-04-15 08:53:58,806 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:53:58,807 INFO L82 GeneralOperation]: Start isEquivalent. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:53:58,807 INFO L74 IsIncluded]: Start isIncluded. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:53:58,807 INFO L87 Difference]: Start difference. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:53:58,811 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:58,811 INFO L93 Difference]: Finished difference Result 152 states and 206 transitions. [2022-04-15 08:53:58,811 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 206 transitions. [2022-04-15 08:53:58,811 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:58,811 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:58,812 INFO L74 IsIncluded]: Start isIncluded. First operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 152 states. [2022-04-15 08:53:58,812 INFO L87 Difference]: Start difference. First operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 152 states. [2022-04-15 08:53:58,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:53:58,815 INFO L93 Difference]: Finished difference Result 152 states and 206 transitions. [2022-04-15 08:53:58,815 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 206 transitions. [2022-04-15 08:53:58,816 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:53:58,816 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:53:58,816 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:53:58,816 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:53:58,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:53:58,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 202 transitions. [2022-04-15 08:53:58,820 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 202 transitions. Word has length 36 [2022-04-15 08:53:58,820 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:53:58,820 INFO L478 AbstractCegarLoop]: Abstraction has 148 states and 202 transitions. [2022-04-15 08:53:58,820 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:53:58,820 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 148 states and 202 transitions. [2022-04-15 08:53:58,987 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 202 edges. 202 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:58,987 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 202 transitions. [2022-04-15 08:53:58,987 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-15 08:53:58,987 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:53:58,987 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-15 08:53:59,004 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-15 08:53:59,203 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-15 08:53:59,204 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:53:59,204 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:53:59,204 INFO L85 PathProgramCache]: Analyzing trace with hash -428189223, now seen corresponding path program 3 times [2022-04-15 08:53:59,204 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:59,204 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1087267209] [2022-04-15 08:53:59,204 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:53:59,205 INFO L85 PathProgramCache]: Analyzing trace with hash -428189223, now seen corresponding path program 4 times [2022-04-15 08:53:59,205 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:53:59,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [167474849] [2022-04-15 08:53:59,205 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:53:59,205 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:53:59,217 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:53:59,218 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1436647439] [2022-04-15 08:53:59,218 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:53:59,218 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:53:59,218 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:53:59,225 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-15 08:53:59,226 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-15 08:53:59,272 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:53:59,272 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:53:59,273 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 08:53:59,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:53:59,280 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:53:59,366 INFO L272 TraceCheckUtils]: 0: Hoare triple {5875#true} call ULTIMATE.init(); {5875#true} is VALID [2022-04-15 08:53:59,367 INFO L290 TraceCheckUtils]: 1: Hoare triple {5875#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);~counter~0 := 0; {5875#true} is VALID [2022-04-15 08:53:59,367 INFO L290 TraceCheckUtils]: 2: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-15 08:53:59,367 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5875#true} {5875#true} #108#return; {5875#true} is VALID [2022-04-15 08:53:59,367 INFO L272 TraceCheckUtils]: 4: Hoare triple {5875#true} call #t~ret9 := main(); {5875#true} is VALID [2022-04-15 08:53:59,367 INFO L290 TraceCheckUtils]: 5: Hoare triple {5875#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5875#true} is VALID [2022-04-15 08:53:59,367 INFO L272 TraceCheckUtils]: 6: Hoare triple {5875#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5875#true} is VALID [2022-04-15 08:53:59,367 INFO L290 TraceCheckUtils]: 7: Hoare triple {5875#true} ~cond := #in~cond; {5875#true} is VALID [2022-04-15 08:53:59,367 INFO L290 TraceCheckUtils]: 8: Hoare triple {5875#true} assume !(0 == ~cond); {5875#true} is VALID [2022-04-15 08:53:59,367 INFO L290 TraceCheckUtils]: 9: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-15 08:53:59,367 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5875#true} {5875#true} #94#return; {5875#true} is VALID [2022-04-15 08:53:59,367 INFO L272 TraceCheckUtils]: 11: Hoare triple {5875#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5875#true} is VALID [2022-04-15 08:53:59,368 INFO L290 TraceCheckUtils]: 12: Hoare triple {5875#true} ~cond := #in~cond; {5875#true} is VALID [2022-04-15 08:53:59,368 INFO L290 TraceCheckUtils]: 13: Hoare triple {5875#true} assume !(0 == ~cond); {5875#true} is VALID [2022-04-15 08:53:59,368 INFO L290 TraceCheckUtils]: 14: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-15 08:53:59,368 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5875#true} {5875#true} #96#return; {5875#true} is VALID [2022-04-15 08:53:59,368 INFO L290 TraceCheckUtils]: 16: Hoare triple {5875#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5875#true} is VALID [2022-04-15 08:53:59,368 INFO L290 TraceCheckUtils]: 17: Hoare triple {5875#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5875#true} is VALID [2022-04-15 08:53:59,368 INFO L290 TraceCheckUtils]: 18: Hoare triple {5875#true} assume !!(#t~post6 < 20);havoc #t~post6; {5875#true} is VALID [2022-04-15 08:53:59,368 INFO L290 TraceCheckUtils]: 19: Hoare triple {5875#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5875#true} is VALID [2022-04-15 08:53:59,368 INFO L290 TraceCheckUtils]: 20: Hoare triple {5875#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5875#true} is VALID [2022-04-15 08:53:59,368 INFO L290 TraceCheckUtils]: 21: Hoare triple {5875#true} assume !!(#t~post7 < 20);havoc #t~post7; {5875#true} is VALID [2022-04-15 08:53:59,368 INFO L290 TraceCheckUtils]: 22: Hoare triple {5875#true} assume !(~c~0 >= ~b~0); {5946#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-15 08:53:59,369 INFO L290 TraceCheckUtils]: 23: Hoare triple {5946#(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; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 08:53:59,369 INFO L290 TraceCheckUtils]: 24: Hoare triple {5950#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 08:53:59,369 INFO L290 TraceCheckUtils]: 25: Hoare triple {5950#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 08:53:59,370 INFO L290 TraceCheckUtils]: 26: Hoare triple {5950#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 08:53:59,370 INFO L290 TraceCheckUtils]: 27: Hoare triple {5960#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 08:53:59,370 INFO L290 TraceCheckUtils]: 28: Hoare triple {5960#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 08:53:59,371 INFO L290 TraceCheckUtils]: 29: Hoare triple {5960#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {5876#false} is VALID [2022-04-15 08:53:59,371 INFO L290 TraceCheckUtils]: 30: Hoare triple {5876#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; {5876#false} is VALID [2022-04-15 08:53:59,371 INFO L290 TraceCheckUtils]: 31: Hoare triple {5876#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5876#false} is VALID [2022-04-15 08:53:59,371 INFO L290 TraceCheckUtils]: 32: Hoare triple {5876#false} assume !(#t~post6 < 20);havoc #t~post6; {5876#false} is VALID [2022-04-15 08:53:59,371 INFO L272 TraceCheckUtils]: 33: Hoare triple {5876#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)); {5876#false} is VALID [2022-04-15 08:53:59,371 INFO L290 TraceCheckUtils]: 34: Hoare triple {5876#false} ~cond := #in~cond; {5876#false} is VALID [2022-04-15 08:53:59,371 INFO L290 TraceCheckUtils]: 35: Hoare triple {5876#false} assume 0 == ~cond; {5876#false} is VALID [2022-04-15 08:53:59,371 INFO L290 TraceCheckUtils]: 36: Hoare triple {5876#false} assume !false; {5876#false} is VALID [2022-04-15 08:53:59,371 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:53:59,371 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:53:59,372 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:53:59,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [167474849] [2022-04-15 08:53:59,372 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:53:59,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1436647439] [2022-04-15 08:53:59,372 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1436647439] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:59,372 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:59,372 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:53:59,372 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:53:59,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1087267209] [2022-04-15 08:53:59,372 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1087267209] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:53:59,372 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:53:59,372 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:53:59,372 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1830977815] [2022-04-15 08:53:59,372 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:53:59,373 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 37 [2022-04-15 08:53:59,373 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:53:59,373 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:53:59,390 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:53:59,391 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:53:59,391 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:53:59,391 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:53:59,391 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 08:53:59,391 INFO L87 Difference]: Start difference. First operand 148 states and 202 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:54:00,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:00,031 INFO L93 Difference]: Finished difference Result 300 states and 442 transitions. [2022-04-15 08:54:00,032 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 08:54:00,032 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 37 [2022-04-15 08:54:00,032 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:00,032 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:54:00,033 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-15 08:54:00,033 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:54:00,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-15 08:54:00,034 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 124 transitions. [2022-04-15 08:54:00,120 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:00,124 INFO L225 Difference]: With dead ends: 300 [2022-04-15 08:54:00,124 INFO L226 Difference]: Without dead ends: 249 [2022-04-15 08:54:00,125 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 34 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-15 08:54:00,125 INFO L913 BasicCegarLoop]: 64 mSDtfsCounter, 29 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 92 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 176 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 92 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:00,125 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 176 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 92 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:54:00,126 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 249 states. [2022-04-15 08:54:00,381 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 249 to 175. [2022-04-15 08:54:00,382 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:00,382 INFO L82 GeneralOperation]: Start isEquivalent. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:54:00,382 INFO L74 IsIncluded]: Start isIncluded. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:54:00,383 INFO L87 Difference]: Start difference. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:54:00,388 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:00,388 INFO L93 Difference]: Finished difference Result 249 states and 361 transitions. [2022-04-15 08:54:00,388 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 361 transitions. [2022-04-15 08:54:00,389 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:00,389 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:00,389 INFO L74 IsIncluded]: Start isIncluded. First operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 249 states. [2022-04-15 08:54:00,390 INFO L87 Difference]: Start difference. First operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 249 states. [2022-04-15 08:54:00,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:00,395 INFO L93 Difference]: Finished difference Result 249 states and 361 transitions. [2022-04-15 08:54:00,395 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 361 transitions. [2022-04-15 08:54:00,396 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:00,396 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:00,396 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:00,396 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:00,396 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-15 08:54:00,399 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 175 states to 175 states and 239 transitions. [2022-04-15 08:54:00,399 INFO L78 Accepts]: Start accepts. Automaton has 175 states and 239 transitions. Word has length 37 [2022-04-15 08:54:00,400 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:00,401 INFO L478 AbstractCegarLoop]: Abstraction has 175 states and 239 transitions. [2022-04-15 08:54:00,401 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, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-15 08:54:00,401 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 175 states and 239 transitions. [2022-04-15 08:54:00,625 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:00,625 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 239 transitions. [2022-04-15 08:54:00,626 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-15 08:54:00,626 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:00,626 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-15 08:54:00,644 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-15 08:54:00,839 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-15 08:54:00,839 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:00,840 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:00,840 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 1 times [2022-04-15 08:54:00,840 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:00,840 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [274960353] [2022-04-15 08:54:00,840 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:00,840 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 2 times [2022-04-15 08:54:00,840 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:00,840 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [179542894] [2022-04-15 08:54:00,840 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:00,840 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:00,851 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:00,851 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1853601599] [2022-04-15 08:54:00,851 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:54:00,851 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:00,851 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:00,852 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-15 08:54:00,875 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-15 08:54:00,909 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:54:00,909 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:00,910 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 08:54:00,918 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:00,919 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:01,114 INFO L272 TraceCheckUtils]: 0: Hoare triple {7443#true} call ULTIMATE.init(); {7443#true} is VALID [2022-04-15 08:54:01,114 INFO L290 TraceCheckUtils]: 1: Hoare triple {7443#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);~counter~0 := 0; {7443#true} is VALID [2022-04-15 08:54:01,114 INFO L290 TraceCheckUtils]: 2: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-15 08:54:01,114 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7443#true} {7443#true} #108#return; {7443#true} is VALID [2022-04-15 08:54:01,114 INFO L272 TraceCheckUtils]: 4: Hoare triple {7443#true} call #t~ret9 := main(); {7443#true} is VALID [2022-04-15 08:54:01,114 INFO L290 TraceCheckUtils]: 5: Hoare triple {7443#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7443#true} is VALID [2022-04-15 08:54:01,114 INFO L272 TraceCheckUtils]: 6: Hoare triple {7443#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7443#true} is VALID [2022-04-15 08:54:01,114 INFO L290 TraceCheckUtils]: 7: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-15 08:54:01,114 INFO L290 TraceCheckUtils]: 8: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-15 08:54:01,115 INFO L290 TraceCheckUtils]: 9: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-15 08:54:01,115 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7443#true} {7443#true} #94#return; {7443#true} is VALID [2022-04-15 08:54:01,115 INFO L272 TraceCheckUtils]: 11: Hoare triple {7443#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7443#true} is VALID [2022-04-15 08:54:01,115 INFO L290 TraceCheckUtils]: 12: Hoare triple {7443#true} ~cond := #in~cond; {7484#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 08:54:01,115 INFO L290 TraceCheckUtils]: 13: Hoare triple {7484#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {7488#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:54:01,116 INFO L290 TraceCheckUtils]: 14: Hoare triple {7488#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {7488#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:54:01,116 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7488#(not (= |assume_abort_if_not_#in~cond| 0))} {7443#true} #96#return; {7495#(<= 1 main_~y~0)} is VALID [2022-04-15 08:54:01,116 INFO L290 TraceCheckUtils]: 16: Hoare triple {7495#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7499#(<= 1 main_~b~0)} is VALID [2022-04-15 08:54:01,117 INFO L290 TraceCheckUtils]: 17: Hoare triple {7499#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7499#(<= 1 main_~b~0)} is VALID [2022-04-15 08:54:01,117 INFO L290 TraceCheckUtils]: 18: Hoare triple {7499#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {7499#(<= 1 main_~b~0)} is VALID [2022-04-15 08:54:01,119 INFO L290 TraceCheckUtils]: 19: Hoare triple {7499#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:01,119 INFO L290 TraceCheckUtils]: 20: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:01,119 INFO L290 TraceCheckUtils]: 21: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post7 < 20);havoc #t~post7; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:01,120 INFO L290 TraceCheckUtils]: 22: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:01,120 INFO L290 TraceCheckUtils]: 23: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:01,120 INFO L290 TraceCheckUtils]: 24: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post8 < 20);havoc #t~post8; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:01,120 INFO L272 TraceCheckUtils]: 25: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7443#true} is VALID [2022-04-15 08:54:01,121 INFO L290 TraceCheckUtils]: 26: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-15 08:54:01,121 INFO L290 TraceCheckUtils]: 27: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-15 08:54:01,121 INFO L290 TraceCheckUtils]: 28: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-15 08:54:01,121 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {7443#true} {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #98#return; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:01,121 INFO L272 TraceCheckUtils]: 30: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7443#true} is VALID [2022-04-15 08:54:01,121 INFO L290 TraceCheckUtils]: 31: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-15 08:54:01,122 INFO L290 TraceCheckUtils]: 32: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-15 08:54:01,122 INFO L290 TraceCheckUtils]: 33: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-15 08:54:01,122 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {7443#true} {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #100#return; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:01,123 INFO L272 TraceCheckUtils]: 35: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7558#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:54:01,123 INFO L290 TraceCheckUtils]: 36: Hoare triple {7558#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7562#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:54:01,123 INFO L290 TraceCheckUtils]: 37: Hoare triple {7562#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7444#false} is VALID [2022-04-15 08:54:01,123 INFO L290 TraceCheckUtils]: 38: Hoare triple {7444#false} assume !false; {7444#false} is VALID [2022-04-15 08:54:01,124 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-15 08:54:01,124 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:54:01,124 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:01,124 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [179542894] [2022-04-15 08:54:01,124 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:01,124 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1853601599] [2022-04-15 08:54:01,124 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1853601599] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:01,124 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:01,124 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 08:54:01,124 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:01,124 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [274960353] [2022-04-15 08:54:01,125 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [274960353] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:01,125 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:01,125 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 08:54:01,125 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [198284502] [2022-04-15 08:54:01,125 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:01,125 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-15 08:54:01,125 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:01,125 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:54:01,148 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-15 08:54:01,149 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 08:54:01,149 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:01,149 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 08:54:01,149 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-15 08:54:01,149 INFO L87 Difference]: Start difference. First operand 175 states and 239 transitions. Second operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:54:01,869 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:01,869 INFO L93 Difference]: Finished difference Result 193 states and 262 transitions. [2022-04-15 08:54:01,869 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 08:54:01,869 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-15 08:54:01,869 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:01,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:54:01,871 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 92 transitions. [2022-04-15 08:54:01,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:54:01,872 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 92 transitions. [2022-04-15 08:54:01,872 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 92 transitions. [2022-04-15 08:54:01,940 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:01,942 INFO L225 Difference]: With dead ends: 193 [2022-04-15 08:54:01,943 INFO L226 Difference]: Without dead ends: 191 [2022-04-15 08:54:01,943 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-15 08:54:01,943 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 57 mSDsluCounter, 225 mSDsCounter, 0 mSdLazyCounter, 150 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 61 SdHoareTripleChecker+Valid, 270 SdHoareTripleChecker+Invalid, 168 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 150 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:01,944 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [61 Valid, 270 Invalid, 168 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 150 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:54:01,944 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 191 states. [2022-04-15 08:54:02,268 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 191 to 190. [2022-04-15 08:54:02,268 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:02,269 INFO L82 GeneralOperation]: Start isEquivalent. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 08:54:02,269 INFO L74 IsIncluded]: Start isIncluded. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 08:54:02,269 INFO L87 Difference]: Start difference. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 08:54:02,272 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:02,272 INFO L93 Difference]: Finished difference Result 191 states and 259 transitions. [2022-04-15 08:54:02,272 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 259 transitions. [2022-04-15 08:54:02,273 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:02,273 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:02,273 INFO L74 IsIncluded]: Start isIncluded. First operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 191 states. [2022-04-15 08:54:02,274 INFO L87 Difference]: Start difference. First operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 191 states. [2022-04-15 08:54:02,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:02,277 INFO L93 Difference]: Finished difference Result 191 states and 259 transitions. [2022-04-15 08:54:02,277 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 259 transitions. [2022-04-15 08:54:02,277 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:02,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:02,277 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:02,277 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:02,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 08:54:02,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 258 transitions. [2022-04-15 08:54:02,281 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 258 transitions. Word has length 39 [2022-04-15 08:54:02,281 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:02,282 INFO L478 AbstractCegarLoop]: Abstraction has 190 states and 258 transitions. [2022-04-15 08:54:02,282 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:54:02,282 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 190 states and 258 transitions. [2022-04-15 08:54:02,534 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 258 edges. 258 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:02,534 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 258 transitions. [2022-04-15 08:54:02,535 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-15 08:54:02,535 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:02,535 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-15 08:54:02,551 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-15 08:54:02,751 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-15 08:54:02,751 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:02,751 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:02,752 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 1 times [2022-04-15 08:54:02,752 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:02,752 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [25228670] [2022-04-15 08:54:02,752 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:02,752 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 2 times [2022-04-15 08:54:02,752 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:02,752 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1507158423] [2022-04-15 08:54:02,752 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:02,752 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:02,766 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:02,766 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [692517873] [2022-04-15 08:54:02,766 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:54:02,767 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:02,767 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:02,771 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-15 08:54:02,772 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-15 08:54:02,807 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:54:02,807 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:02,808 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-15 08:54:02,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:02,817 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:03,335 INFO L272 TraceCheckUtils]: 0: Hoare triple {8724#true} call ULTIMATE.init(); {8724#true} is VALID [2022-04-15 08:54:03,335 INFO L290 TraceCheckUtils]: 1: Hoare triple {8724#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);~counter~0 := 0; {8724#true} is VALID [2022-04-15 08:54:03,336 INFO L290 TraceCheckUtils]: 2: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-15 08:54:03,336 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8724#true} {8724#true} #108#return; {8724#true} is VALID [2022-04-15 08:54:03,336 INFO L272 TraceCheckUtils]: 4: Hoare triple {8724#true} call #t~ret9 := main(); {8724#true} is VALID [2022-04-15 08:54:03,336 INFO L290 TraceCheckUtils]: 5: Hoare triple {8724#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8724#true} is VALID [2022-04-15 08:54:03,336 INFO L272 TraceCheckUtils]: 6: Hoare triple {8724#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-15 08:54:03,336 INFO L290 TraceCheckUtils]: 7: Hoare triple {8724#true} ~cond := #in~cond; {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 08:54:03,336 INFO L290 TraceCheckUtils]: 8: Hoare triple {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:54:03,337 INFO L290 TraceCheckUtils]: 9: Hoare triple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:54:03,337 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} {8724#true} #94#return; {8761#(<= 1 main_~x~0)} is VALID [2022-04-15 08:54:03,337 INFO L272 TraceCheckUtils]: 11: Hoare triple {8761#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-15 08:54:03,338 INFO L290 TraceCheckUtils]: 12: Hoare triple {8724#true} ~cond := #in~cond; {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 08:54:03,338 INFO L290 TraceCheckUtils]: 13: Hoare triple {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:54:03,338 INFO L290 TraceCheckUtils]: 14: Hoare triple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:54:03,339 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} {8761#(<= 1 main_~x~0)} #96#return; {8777#(and (<= 1 main_~x~0) (<= 1 main_~y~0))} is VALID [2022-04-15 08:54:03,339 INFO L290 TraceCheckUtils]: 16: Hoare triple {8777#(and (<= 1 main_~x~0) (<= 1 main_~y~0))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:54:03,340 INFO L290 TraceCheckUtils]: 17: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:54:03,340 INFO L290 TraceCheckUtils]: 18: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:54:03,341 INFO L290 TraceCheckUtils]: 19: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~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; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:54:03,341 INFO L290 TraceCheckUtils]: 20: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:54:03,342 INFO L290 TraceCheckUtils]: 21: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:54:03,342 INFO L290 TraceCheckUtils]: 22: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 08:54:03,343 INFO L290 TraceCheckUtils]: 23: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~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; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 08:54:03,343 INFO L290 TraceCheckUtils]: 24: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 08:54:03,343 INFO L290 TraceCheckUtils]: 25: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post6 < 20);havoc #t~post6; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 08:54:03,344 INFO L290 TraceCheckUtils]: 26: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 08:54:03,344 INFO L290 TraceCheckUtils]: 27: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 08:54:03,344 INFO L290 TraceCheckUtils]: 28: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post7 < 20);havoc #t~post7; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 08:54:03,345 INFO L290 TraceCheckUtils]: 29: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 08:54:03,345 INFO L290 TraceCheckUtils]: 30: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 08:54:03,345 INFO L290 TraceCheckUtils]: 31: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post8 < 20);havoc #t~post8; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 08:54:03,346 INFO L272 TraceCheckUtils]: 32: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8724#true} is VALID [2022-04-15 08:54:03,346 INFO L290 TraceCheckUtils]: 33: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-15 08:54:03,346 INFO L290 TraceCheckUtils]: 34: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-15 08:54:03,346 INFO L290 TraceCheckUtils]: 35: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-15 08:54:03,346 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8724#true} {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #98#return; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-15 08:54:03,347 INFO L272 TraceCheckUtils]: 37: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:54:03,347 INFO L290 TraceCheckUtils]: 38: Hoare triple {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:54:03,348 INFO L290 TraceCheckUtils]: 39: Hoare triple {8851#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8725#false} is VALID [2022-04-15 08:54:03,348 INFO L290 TraceCheckUtils]: 40: Hoare triple {8725#false} assume !false; {8725#false} is VALID [2022-04-15 08:54:03,348 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:54:03,348 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:54:03,653 INFO L290 TraceCheckUtils]: 40: Hoare triple {8725#false} assume !false; {8725#false} is VALID [2022-04-15 08:54:03,653 INFO L290 TraceCheckUtils]: 39: Hoare triple {8851#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8725#false} is VALID [2022-04-15 08:54:03,653 INFO L290 TraceCheckUtils]: 38: Hoare triple {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:54:03,654 INFO L272 TraceCheckUtils]: 37: Hoare triple {8867#(= 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)); {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:54:03,655 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8724#true} {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:54:03,655 INFO L290 TraceCheckUtils]: 35: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-15 08:54:03,655 INFO L290 TraceCheckUtils]: 34: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-15 08:54:03,655 INFO L290 TraceCheckUtils]: 33: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-15 08:54:03,655 INFO L272 TraceCheckUtils]: 32: Hoare triple {8867#(= 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)); {8724#true} is VALID [2022-04-15 08:54:03,655 INFO L290 TraceCheckUtils]: 31: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:54:03,656 INFO L290 TraceCheckUtils]: 30: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:54:03,656 INFO L290 TraceCheckUtils]: 29: Hoare triple {8867#(= 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; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:54:03,656 INFO L290 TraceCheckUtils]: 28: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:54:03,657 INFO L290 TraceCheckUtils]: 27: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:54:03,657 INFO L290 TraceCheckUtils]: 26: Hoare triple {8867#(= 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; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:54:03,657 INFO L290 TraceCheckUtils]: 25: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:54:03,657 INFO L290 TraceCheckUtils]: 24: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:54:05,659 WARN L290 TraceCheckUtils]: 23: Hoare triple {8910#(= (+ (* (+ (* (* 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)} ~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; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-15 08:54:05,660 INFO L290 TraceCheckUtils]: 22: Hoare triple {8910#(= (+ (* (+ (* (* 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)} assume !(~c~0 >= ~b~0); {8910#(= (+ (* (+ (* (* 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)} is VALID [2022-04-15 08:54:05,660 INFO L290 TraceCheckUtils]: 21: Hoare triple {8910#(= (+ (* (+ (* (* 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)} assume !!(#t~post7 < 20);havoc #t~post7; {8910#(= (+ (* (+ (* (* 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)} is VALID [2022-04-15 08:54:05,660 INFO L290 TraceCheckUtils]: 20: Hoare triple {8910#(= (+ (* (+ (* (* 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)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8910#(= (+ (* (+ (* (* 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)} is VALID [2022-04-15 08:54:05,661 INFO L290 TraceCheckUtils]: 19: Hoare triple {8923#(= 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; {8910#(= (+ (* (+ (* (* 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)} is VALID [2022-04-15 08:54:05,661 INFO L290 TraceCheckUtils]: 18: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:54:05,662 INFO L290 TraceCheckUtils]: 17: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:54:05,662 INFO L290 TraceCheckUtils]: 16: Hoare triple {8724#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:54:05,662 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8724#true} {8724#true} #96#return; {8724#true} is VALID [2022-04-15 08:54:05,662 INFO L290 TraceCheckUtils]: 14: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-15 08:54:05,662 INFO L290 TraceCheckUtils]: 13: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-15 08:54:05,662 INFO L290 TraceCheckUtils]: 12: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-15 08:54:05,662 INFO L272 TraceCheckUtils]: 11: Hoare triple {8724#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-15 08:54:05,662 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8724#true} {8724#true} #94#return; {8724#true} is VALID [2022-04-15 08:54:05,663 INFO L290 TraceCheckUtils]: 9: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-15 08:54:05,663 INFO L290 TraceCheckUtils]: 8: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-15 08:54:05,663 INFO L290 TraceCheckUtils]: 7: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-15 08:54:05,663 INFO L272 TraceCheckUtils]: 6: Hoare triple {8724#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-15 08:54:05,663 INFO L290 TraceCheckUtils]: 5: Hoare triple {8724#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8724#true} is VALID [2022-04-15 08:54:05,663 INFO L272 TraceCheckUtils]: 4: Hoare triple {8724#true} call #t~ret9 := main(); {8724#true} is VALID [2022-04-15 08:54:05,663 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8724#true} {8724#true} #108#return; {8724#true} is VALID [2022-04-15 08:54:05,663 INFO L290 TraceCheckUtils]: 2: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-15 08:54:05,663 INFO L290 TraceCheckUtils]: 1: Hoare triple {8724#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);~counter~0 := 0; {8724#true} is VALID [2022-04-15 08:54:05,663 INFO L272 TraceCheckUtils]: 0: Hoare triple {8724#true} call ULTIMATE.init(); {8724#true} is VALID [2022-04-15 08:54:05,663 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:54:05,664 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:05,664 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1507158423] [2022-04-15 08:54:05,664 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:05,664 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [692517873] [2022-04-15 08:54:05,664 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [692517873] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:54:05,664 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:54:05,664 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7] total 14 [2022-04-15 08:54:05,664 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:05,664 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [25228670] [2022-04-15 08:54:05,664 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [25228670] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:05,664 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:05,664 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 08:54:05,664 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [869167256] [2022-04-15 08:54:05,664 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:05,665 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 41 [2022-04-15 08:54:05,665 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:05,665 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 08:54:05,705 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-15 08:54:05,705 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 08:54:05,706 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:05,706 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 08:54:05,706 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-15 08:54:05,706 INFO L87 Difference]: Start difference. First operand 190 states and 258 transitions. Second operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 08:54:06,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:06,733 INFO L93 Difference]: Finished difference Result 199 states and 266 transitions. [2022-04-15 08:54:06,733 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-15 08:54:06,733 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 41 [2022-04-15 08:54:06,733 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:06,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 08:54:06,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-15 08:54:06,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 08:54:06,736 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-15 08:54:06,736 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 115 transitions. [2022-04-15 08:54:06,833 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-15 08:54:06,836 INFO L225 Difference]: With dead ends: 199 [2022-04-15 08:54:06,836 INFO L226 Difference]: Without dead ends: 197 [2022-04-15 08:54:06,836 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 68 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2022-04-15 08:54:06,837 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 104 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 248 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 116 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 278 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 248 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:06,837 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [116 Valid, 310 Invalid, 278 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 248 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 08:54:06,837 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-15 08:54:07,172 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 194. [2022-04-15 08:54:07,172 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:07,172 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 08:54:07,173 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 08:54:07,173 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 08:54:07,176 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:07,176 INFO L93 Difference]: Finished difference Result 197 states and 264 transitions. [2022-04-15 08:54:07,176 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 264 transitions. [2022-04-15 08:54:07,177 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:07,177 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:07,177 INFO L74 IsIncluded]: Start isIncluded. First operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 197 states. [2022-04-15 08:54:07,177 INFO L87 Difference]: Start difference. First operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 197 states. [2022-04-15 08:54:07,181 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:07,181 INFO L93 Difference]: Finished difference Result 197 states and 264 transitions. [2022-04-15 08:54:07,181 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 264 transitions. [2022-04-15 08:54:07,182 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:07,182 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:07,182 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:07,182 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:07,182 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 08:54:07,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 194 states to 194 states and 261 transitions. [2022-04-15 08:54:07,185 INFO L78 Accepts]: Start accepts. Automaton has 194 states and 261 transitions. Word has length 41 [2022-04-15 08:54:07,186 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:07,186 INFO L478 AbstractCegarLoop]: Abstraction has 194 states and 261 transitions. [2022-04-15 08:54:07,186 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 08:54:07,186 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 194 states and 261 transitions. [2022-04-15 08:54:07,452 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:07,453 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 261 transitions. [2022-04-15 08:54:07,453 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-15 08:54:07,453 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:07,453 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-15 08:54:07,471 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-15 08:54:07,667 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-15 08:54:07,667 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:07,668 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:07,668 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 1 times [2022-04-15 08:54:07,668 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:07,668 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2026980129] [2022-04-15 08:54:07,668 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:07,668 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 2 times [2022-04-15 08:54:07,668 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:07,668 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [99897358] [2022-04-15 08:54:07,668 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:07,669 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:07,684 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:07,684 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1325104990] [2022-04-15 08:54:07,684 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:54:07,684 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:07,684 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:07,685 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-15 08:54:07,686 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-15 08:54:07,718 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:54:07,719 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:07,719 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 08:54:07,726 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:07,727 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:07,844 INFO L272 TraceCheckUtils]: 0: Hoare triple {10169#true} call ULTIMATE.init(); {10169#true} is VALID [2022-04-15 08:54:07,844 INFO L290 TraceCheckUtils]: 1: Hoare triple {10169#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);~counter~0 := 0; {10169#true} is VALID [2022-04-15 08:54:07,844 INFO L290 TraceCheckUtils]: 2: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-15 08:54:07,844 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10169#true} {10169#true} #108#return; {10169#true} is VALID [2022-04-15 08:54:07,844 INFO L272 TraceCheckUtils]: 4: Hoare triple {10169#true} call #t~ret9 := main(); {10169#true} is VALID [2022-04-15 08:54:07,844 INFO L290 TraceCheckUtils]: 5: Hoare triple {10169#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10169#true} is VALID [2022-04-15 08:54:07,844 INFO L272 TraceCheckUtils]: 6: Hoare triple {10169#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10169#true} is VALID [2022-04-15 08:54:07,844 INFO L290 TraceCheckUtils]: 7: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-15 08:54:07,844 INFO L290 TraceCheckUtils]: 8: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-15 08:54:07,844 INFO L290 TraceCheckUtils]: 9: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10169#true} {10169#true} #94#return; {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L272 TraceCheckUtils]: 11: Hoare triple {10169#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L290 TraceCheckUtils]: 12: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L290 TraceCheckUtils]: 13: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L290 TraceCheckUtils]: 14: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10169#true} {10169#true} #96#return; {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L290 TraceCheckUtils]: 16: Hoare triple {10169#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L290 TraceCheckUtils]: 17: Hoare triple {10169#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L290 TraceCheckUtils]: 18: Hoare triple {10169#true} assume !!(#t~post6 < 20);havoc #t~post6; {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L290 TraceCheckUtils]: 19: Hoare triple {10169#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L290 TraceCheckUtils]: 20: Hoare triple {10169#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10169#true} is VALID [2022-04-15 08:54:07,845 INFO L290 TraceCheckUtils]: 21: Hoare triple {10169#true} assume !!(#t~post7 < 20);havoc #t~post7; {10169#true} is VALID [2022-04-15 08:54:07,846 INFO L290 TraceCheckUtils]: 22: Hoare triple {10169#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 08:54:07,846 INFO L290 TraceCheckUtils]: 23: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 08:54:07,846 INFO L290 TraceCheckUtils]: 24: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 08:54:07,846 INFO L272 TraceCheckUtils]: 25: Hoare triple {10240#(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)); {10169#true} is VALID [2022-04-15 08:54:07,847 INFO L290 TraceCheckUtils]: 26: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-15 08:54:07,847 INFO L290 TraceCheckUtils]: 27: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-15 08:54:07,847 INFO L290 TraceCheckUtils]: 28: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-15 08:54:07,847 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #98#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 08:54:07,848 INFO L272 TraceCheckUtils]: 30: Hoare triple {10240#(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)); {10169#true} is VALID [2022-04-15 08:54:07,848 INFO L290 TraceCheckUtils]: 31: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-15 08:54:07,848 INFO L290 TraceCheckUtils]: 32: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-15 08:54:07,848 INFO L290 TraceCheckUtils]: 33: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-15 08:54:07,848 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #100#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 08:54:07,848 INFO L272 TraceCheckUtils]: 35: Hoare triple {10240#(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)); {10169#true} is VALID [2022-04-15 08:54:07,849 INFO L290 TraceCheckUtils]: 36: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-15 08:54:07,849 INFO L290 TraceCheckUtils]: 37: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-15 08:54:07,849 INFO L290 TraceCheckUtils]: 38: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-15 08:54:07,849 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-15 08:54:07,850 INFO L272 TraceCheckUtils]: 40: Hoare triple {10240#(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)); {10295#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:54:07,850 INFO L290 TraceCheckUtils]: 41: Hoare triple {10295#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10299#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:54:07,850 INFO L290 TraceCheckUtils]: 42: Hoare triple {10299#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10170#false} is VALID [2022-04-15 08:54:07,851 INFO L290 TraceCheckUtils]: 43: Hoare triple {10170#false} assume !false; {10170#false} is VALID [2022-04-15 08:54:07,851 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-15 08:54:07,851 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:54:07,851 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:07,851 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [99897358] [2022-04-15 08:54:07,851 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:07,851 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1325104990] [2022-04-15 08:54:07,851 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1325104990] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:07,851 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:07,851 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:54:07,851 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:07,852 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2026980129] [2022-04-15 08:54:07,852 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2026980129] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:07,852 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:07,852 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:54:07,852 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1069549749] [2022-04-15 08:54:07,852 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:07,852 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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 44 [2022-04-15 08:54:07,852 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:07,852 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-15 08:54:07,879 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-15 08:54:07,880 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:54:07,880 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:07,880 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:54:07,880 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 08:54:07,880 INFO L87 Difference]: Start difference. First operand 194 states and 261 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-15 08:54:08,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:08,507 INFO L93 Difference]: Finished difference Result 261 states and 367 transitions. [2022-04-15 08:54:08,507 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 08:54:08,507 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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 44 [2022-04-15 08:54:08,507 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:08,508 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-15 08:54:08,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-15 08:54:08,508 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-15 08:54:08,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-15 08:54:08,509 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-15 08:54:08,568 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:08,574 INFO L225 Difference]: With dead ends: 261 [2022-04-15 08:54:08,574 INFO L226 Difference]: Without dead ends: 259 [2022-04-15 08:54:08,575 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 40 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-15 08:54:08,577 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 12 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 163 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.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:08,577 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 163 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:54:08,578 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 259 states. [2022-04-15 08:54:09,024 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 259 to 228. [2022-04-15 08:54:09,025 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:09,025 INFO L82 GeneralOperation]: Start isEquivalent. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-15 08:54:09,025 INFO L74 IsIncluded]: Start isIncluded. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-15 08:54:09,026 INFO L87 Difference]: Start difference. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-15 08:54:09,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:09,031 INFO L93 Difference]: Finished difference Result 259 states and 364 transitions. [2022-04-15 08:54:09,032 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 364 transitions. [2022-04-15 08:54:09,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:09,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:09,033 INFO L74 IsIncluded]: Start isIncluded. First operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) Second operand 259 states. [2022-04-15 08:54:09,033 INFO L87 Difference]: Start difference. First operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) Second operand 259 states. [2022-04-15 08:54:09,038 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:09,038 INFO L93 Difference]: Finished difference Result 259 states and 364 transitions. [2022-04-15 08:54:09,038 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 364 transitions. [2022-04-15 08:54:09,039 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:09,039 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:09,039 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:09,039 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:09,039 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-15 08:54:09,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 228 states to 228 states and 318 transitions. [2022-04-15 08:54:09,045 INFO L78 Accepts]: Start accepts. Automaton has 228 states and 318 transitions. Word has length 44 [2022-04-15 08:54:09,045 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:09,045 INFO L478 AbstractCegarLoop]: Abstraction has 228 states and 318 transitions. [2022-04-15 08:54:09,048 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 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-15 08:54:09,048 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 228 states and 318 transitions. [2022-04-15 08:54:09,355 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 318 edges. 318 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:09,356 INFO L276 IsEmpty]: Start isEmpty. Operand 228 states and 318 transitions. [2022-04-15 08:54:09,356 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-15 08:54:09,356 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:09,356 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-15 08:54:09,373 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-15 08:54:09,567 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-15 08:54:09,567 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:09,568 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:09,568 INFO L85 PathProgramCache]: Analyzing trace with hash -772903697, now seen corresponding path program 1 times [2022-04-15 08:54:09,568 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:09,568 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [575349727] [2022-04-15 08:54:09,568 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:09,568 INFO L85 PathProgramCache]: Analyzing trace with hash -772903697, now seen corresponding path program 2 times [2022-04-15 08:54:09,568 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:09,568 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1960197434] [2022-04-15 08:54:09,569 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:09,569 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:09,578 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:09,579 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [603669092] [2022-04-15 08:54:09,579 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:54:09,579 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:09,581 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:09,582 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-15 08:54:09,583 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-15 08:54:09,620 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:54:09,620 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:09,621 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 08:54:09,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:09,629 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:09,804 INFO L272 TraceCheckUtils]: 0: Hoare triple {11803#true} call ULTIMATE.init(); {11803#true} is VALID [2022-04-15 08:54:09,805 INFO L290 TraceCheckUtils]: 1: Hoare triple {11803#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);~counter~0 := 0; {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,805 INFO L290 TraceCheckUtils]: 2: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,805 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11811#(<= ~counter~0 0)} {11803#true} #108#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,806 INFO L272 TraceCheckUtils]: 4: Hoare triple {11811#(<= ~counter~0 0)} call #t~ret9 := main(); {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,806 INFO L290 TraceCheckUtils]: 5: Hoare triple {11811#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,806 INFO L272 TraceCheckUtils]: 6: Hoare triple {11811#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,807 INFO L290 TraceCheckUtils]: 7: Hoare triple {11811#(<= ~counter~0 0)} ~cond := #in~cond; {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,807 INFO L290 TraceCheckUtils]: 8: Hoare triple {11811#(<= ~counter~0 0)} assume !(0 == ~cond); {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,807 INFO L290 TraceCheckUtils]: 9: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,808 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11811#(<= ~counter~0 0)} {11811#(<= ~counter~0 0)} #94#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,808 INFO L272 TraceCheckUtils]: 11: Hoare triple {11811#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,808 INFO L290 TraceCheckUtils]: 12: Hoare triple {11811#(<= ~counter~0 0)} ~cond := #in~cond; {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,808 INFO L290 TraceCheckUtils]: 13: Hoare triple {11811#(<= ~counter~0 0)} assume !(0 == ~cond); {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,809 INFO L290 TraceCheckUtils]: 14: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,809 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11811#(<= ~counter~0 0)} {11811#(<= ~counter~0 0)} #96#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,809 INFO L290 TraceCheckUtils]: 16: Hoare triple {11811#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11811#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:09,810 INFO L290 TraceCheckUtils]: 17: Hoare triple {11811#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11860#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:09,810 INFO L290 TraceCheckUtils]: 18: Hoare triple {11860#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {11860#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:09,810 INFO L290 TraceCheckUtils]: 19: Hoare triple {11860#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11860#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:09,811 INFO L290 TraceCheckUtils]: 20: Hoare triple {11860#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11870#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:09,811 INFO L290 TraceCheckUtils]: 21: Hoare triple {11870#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {11870#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:09,811 INFO L290 TraceCheckUtils]: 22: Hoare triple {11870#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {11870#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:09,812 INFO L290 TraceCheckUtils]: 23: Hoare triple {11870#(<= ~counter~0 2)} ~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; {11870#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:09,815 INFO L290 TraceCheckUtils]: 24: Hoare triple {11870#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11883#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:09,816 INFO L290 TraceCheckUtils]: 25: Hoare triple {11883#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {11883#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:09,816 INFO L290 TraceCheckUtils]: 26: Hoare triple {11883#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11883#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:09,816 INFO L290 TraceCheckUtils]: 27: Hoare triple {11883#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11893#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:09,817 INFO L290 TraceCheckUtils]: 28: Hoare triple {11893#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {11893#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:09,817 INFO L290 TraceCheckUtils]: 29: Hoare triple {11893#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11893#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:09,817 INFO L290 TraceCheckUtils]: 30: Hoare triple {11893#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11903#(<= |main_#t~post8| 4)} is VALID [2022-04-15 08:54:09,817 INFO L290 TraceCheckUtils]: 31: Hoare triple {11903#(<= |main_#t~post8| 4)} assume !(#t~post8 < 20);havoc #t~post8; {11804#false} is VALID [2022-04-15 08:54:09,818 INFO L290 TraceCheckUtils]: 32: Hoare triple {11804#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {11804#false} is VALID [2022-04-15 08:54:09,818 INFO L290 TraceCheckUtils]: 33: Hoare triple {11804#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11804#false} is VALID [2022-04-15 08:54:09,818 INFO L290 TraceCheckUtils]: 34: Hoare triple {11804#false} assume !(#t~post7 < 20);havoc #t~post7; {11804#false} is VALID [2022-04-15 08:54:09,818 INFO L290 TraceCheckUtils]: 35: Hoare triple {11804#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; {11804#false} is VALID [2022-04-15 08:54:09,818 INFO L290 TraceCheckUtils]: 36: Hoare triple {11804#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11804#false} is VALID [2022-04-15 08:54:09,818 INFO L290 TraceCheckUtils]: 37: Hoare triple {11804#false} assume !(#t~post6 < 20);havoc #t~post6; {11804#false} is VALID [2022-04-15 08:54:09,818 INFO L272 TraceCheckUtils]: 38: Hoare triple {11804#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)); {11804#false} is VALID [2022-04-15 08:54:09,818 INFO L290 TraceCheckUtils]: 39: Hoare triple {11804#false} ~cond := #in~cond; {11804#false} is VALID [2022-04-15 08:54:09,818 INFO L290 TraceCheckUtils]: 40: Hoare triple {11804#false} assume 0 == ~cond; {11804#false} is VALID [2022-04-15 08:54:09,818 INFO L290 TraceCheckUtils]: 41: Hoare triple {11804#false} assume !false; {11804#false} is VALID [2022-04-15 08:54:09,818 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:54:09,818 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:54:10,095 INFO L290 TraceCheckUtils]: 41: Hoare triple {11804#false} assume !false; {11804#false} is VALID [2022-04-15 08:54:10,095 INFO L290 TraceCheckUtils]: 40: Hoare triple {11804#false} assume 0 == ~cond; {11804#false} is VALID [2022-04-15 08:54:10,095 INFO L290 TraceCheckUtils]: 39: Hoare triple {11804#false} ~cond := #in~cond; {11804#false} is VALID [2022-04-15 08:54:10,095 INFO L272 TraceCheckUtils]: 38: Hoare triple {11804#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)); {11804#false} is VALID [2022-04-15 08:54:10,095 INFO L290 TraceCheckUtils]: 37: Hoare triple {11804#false} assume !(#t~post6 < 20);havoc #t~post6; {11804#false} is VALID [2022-04-15 08:54:10,095 INFO L290 TraceCheckUtils]: 36: Hoare triple {11804#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11804#false} is VALID [2022-04-15 08:54:10,095 INFO L290 TraceCheckUtils]: 35: Hoare triple {11804#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; {11804#false} is VALID [2022-04-15 08:54:10,095 INFO L290 TraceCheckUtils]: 34: Hoare triple {11804#false} assume !(#t~post7 < 20);havoc #t~post7; {11804#false} is VALID [2022-04-15 08:54:10,095 INFO L290 TraceCheckUtils]: 33: Hoare triple {11804#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11804#false} is VALID [2022-04-15 08:54:10,096 INFO L290 TraceCheckUtils]: 32: Hoare triple {11804#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {11804#false} is VALID [2022-04-15 08:54:10,096 INFO L290 TraceCheckUtils]: 31: Hoare triple {11967#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {11804#false} is VALID [2022-04-15 08:54:10,096 INFO L290 TraceCheckUtils]: 30: Hoare triple {11971#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11967#(< |main_#t~post8| 20)} is VALID [2022-04-15 08:54:10,096 INFO L290 TraceCheckUtils]: 29: Hoare triple {11971#(< ~counter~0 20)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11971#(< ~counter~0 20)} is VALID [2022-04-15 08:54:10,097 INFO L290 TraceCheckUtils]: 28: Hoare triple {11971#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {11971#(< ~counter~0 20)} is VALID [2022-04-15 08:54:10,097 INFO L290 TraceCheckUtils]: 27: Hoare triple {11981#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11971#(< ~counter~0 20)} is VALID [2022-04-15 08:54:10,098 INFO L290 TraceCheckUtils]: 26: Hoare triple {11981#(< ~counter~0 19)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11981#(< ~counter~0 19)} is VALID [2022-04-15 08:54:10,098 INFO L290 TraceCheckUtils]: 25: Hoare triple {11981#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {11981#(< ~counter~0 19)} is VALID [2022-04-15 08:54:10,098 INFO L290 TraceCheckUtils]: 24: Hoare triple {11991#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11981#(< ~counter~0 19)} is VALID [2022-04-15 08:54:10,098 INFO L290 TraceCheckUtils]: 23: Hoare triple {11991#(< ~counter~0 18)} ~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; {11991#(< ~counter~0 18)} is VALID [2022-04-15 08:54:10,099 INFO L290 TraceCheckUtils]: 22: Hoare triple {11991#(< ~counter~0 18)} assume !(~c~0 >= ~b~0); {11991#(< ~counter~0 18)} is VALID [2022-04-15 08:54:10,099 INFO L290 TraceCheckUtils]: 21: Hoare triple {11991#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {11991#(< ~counter~0 18)} is VALID [2022-04-15 08:54:10,099 INFO L290 TraceCheckUtils]: 20: Hoare triple {12004#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11991#(< ~counter~0 18)} is VALID [2022-04-15 08:54:10,100 INFO L290 TraceCheckUtils]: 19: Hoare triple {12004#(< ~counter~0 17)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12004#(< ~counter~0 17)} is VALID [2022-04-15 08:54:10,100 INFO L290 TraceCheckUtils]: 18: Hoare triple {12004#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {12004#(< ~counter~0 17)} is VALID [2022-04-15 08:54:10,100 INFO L290 TraceCheckUtils]: 17: Hoare triple {12014#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12004#(< ~counter~0 17)} is VALID [2022-04-15 08:54:10,101 INFO L290 TraceCheckUtils]: 16: Hoare triple {12014#(< ~counter~0 16)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12014#(< ~counter~0 16)} is VALID [2022-04-15 08:54:10,101 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11803#true} {12014#(< ~counter~0 16)} #96#return; {12014#(< ~counter~0 16)} is VALID [2022-04-15 08:54:10,101 INFO L290 TraceCheckUtils]: 14: Hoare triple {11803#true} assume true; {11803#true} is VALID [2022-04-15 08:54:10,101 INFO L290 TraceCheckUtils]: 13: Hoare triple {11803#true} assume !(0 == ~cond); {11803#true} is VALID [2022-04-15 08:54:10,101 INFO L290 TraceCheckUtils]: 12: Hoare triple {11803#true} ~cond := #in~cond; {11803#true} is VALID [2022-04-15 08:54:10,101 INFO L272 TraceCheckUtils]: 11: Hoare triple {12014#(< ~counter~0 16)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11803#true} is VALID [2022-04-15 08:54:10,102 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11803#true} {12014#(< ~counter~0 16)} #94#return; {12014#(< ~counter~0 16)} is VALID [2022-04-15 08:54:10,102 INFO L290 TraceCheckUtils]: 9: Hoare triple {11803#true} assume true; {11803#true} is VALID [2022-04-15 08:54:10,102 INFO L290 TraceCheckUtils]: 8: Hoare triple {11803#true} assume !(0 == ~cond); {11803#true} is VALID [2022-04-15 08:54:10,102 INFO L290 TraceCheckUtils]: 7: Hoare triple {11803#true} ~cond := #in~cond; {11803#true} is VALID [2022-04-15 08:54:10,102 INFO L272 TraceCheckUtils]: 6: Hoare triple {12014#(< ~counter~0 16)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11803#true} is VALID [2022-04-15 08:54:10,106 INFO L290 TraceCheckUtils]: 5: Hoare triple {12014#(< ~counter~0 16)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12014#(< ~counter~0 16)} is VALID [2022-04-15 08:54:10,106 INFO L272 TraceCheckUtils]: 4: Hoare triple {12014#(< ~counter~0 16)} call #t~ret9 := main(); {12014#(< ~counter~0 16)} is VALID [2022-04-15 08:54:10,106 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12014#(< ~counter~0 16)} {11803#true} #108#return; {12014#(< ~counter~0 16)} is VALID [2022-04-15 08:54:10,107 INFO L290 TraceCheckUtils]: 2: Hoare triple {12014#(< ~counter~0 16)} assume true; {12014#(< ~counter~0 16)} is VALID [2022-04-15 08:54:10,107 INFO L290 TraceCheckUtils]: 1: Hoare triple {11803#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);~counter~0 := 0; {12014#(< ~counter~0 16)} is VALID [2022-04-15 08:54:10,107 INFO L272 TraceCheckUtils]: 0: Hoare triple {11803#true} call ULTIMATE.init(); {11803#true} is VALID [2022-04-15 08:54:10,108 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 08:54:10,108 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:10,108 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1960197434] [2022-04-15 08:54:10,108 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:10,108 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [603669092] [2022-04-15 08:54:10,108 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [603669092] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:54:10,108 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:54:10,108 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-15 08:54:10,108 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:10,108 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [575349727] [2022-04-15 08:54:10,108 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [575349727] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:10,109 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:10,109 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 08:54:10,109 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1975349150] [2022-04-15 08:54:10,109 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:10,109 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-15 08:54:10,109 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:10,109 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), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:54:10,133 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:10,133 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 08:54:10,133 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:10,133 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 08:54:10,133 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-15 08:54:10,134 INFO L87 Difference]: Start difference. First operand 228 states and 318 transitions. Second operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:54:10,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:10,786 INFO L93 Difference]: Finished difference Result 429 states and 607 transitions. [2022-04-15 08:54:10,786 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 08:54:10,786 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-15 08:54:10,786 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:10,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:54:10,788 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 132 transitions. [2022-04-15 08:54:10,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:54:10,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 132 transitions. [2022-04-15 08:54:10,790 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 132 transitions. [2022-04-15 08:54:10,880 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:10,886 INFO L225 Difference]: With dead ends: 429 [2022-04-15 08:54:10,887 INFO L226 Difference]: Without dead ends: 264 [2022-04-15 08:54:10,888 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 85 GetRequests, 71 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=147, Unknown=0, NotChecked=0, Total=240 [2022-04-15 08:54:10,890 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 52 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 201 SdHoareTripleChecker+Invalid, 68 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:10,891 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [52 Valid, 201 Invalid, 68 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:54:10,892 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 264 states. [2022-04-15 08:54:11,363 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 264 to 258. [2022-04-15 08:54:11,363 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:11,364 INFO L82 GeneralOperation]: Start isEquivalent. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-15 08:54:11,364 INFO L74 IsIncluded]: Start isIncluded. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-15 08:54:11,364 INFO L87 Difference]: Start difference. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-15 08:54:11,370 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:11,370 INFO L93 Difference]: Finished difference Result 264 states and 356 transitions. [2022-04-15 08:54:11,370 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 356 transitions. [2022-04-15 08:54:11,371 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:11,371 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:11,371 INFO L74 IsIncluded]: Start isIncluded. First operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 264 states. [2022-04-15 08:54:11,371 INFO L87 Difference]: Start difference. First operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 264 states. [2022-04-15 08:54:11,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:11,377 INFO L93 Difference]: Finished difference Result 264 states and 356 transitions. [2022-04-15 08:54:11,377 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 356 transitions. [2022-04-15 08:54:11,378 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:11,378 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:11,378 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:11,378 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:11,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-15 08:54:11,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 258 states to 258 states and 351 transitions. [2022-04-15 08:54:11,384 INFO L78 Accepts]: Start accepts. Automaton has 258 states and 351 transitions. Word has length 42 [2022-04-15 08:54:11,384 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:11,384 INFO L478 AbstractCegarLoop]: Abstraction has 258 states and 351 transitions. [2022-04-15 08:54:11,384 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 08:54:11,384 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 258 states and 351 transitions. [2022-04-15 08:54:11,797 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 351 edges. 351 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:11,797 INFO L276 IsEmpty]: Start isEmpty. Operand 258 states and 351 transitions. [2022-04-15 08:54:11,798 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-15 08:54:11,798 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:11,798 INFO L499 BasicCegarLoop]: trace histogram [3, 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] [2022-04-15 08:54:11,814 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-15 08:54:12,013 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-15 08:54:12,014 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:12,014 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:12,014 INFO L85 PathProgramCache]: Analyzing trace with hash 744709461, now seen corresponding path program 1 times [2022-04-15 08:54:12,014 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:12,014 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [962353199] [2022-04-15 08:54:12,014 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:12,015 INFO L85 PathProgramCache]: Analyzing trace with hash 744709461, now seen corresponding path program 2 times [2022-04-15 08:54:12,015 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:12,015 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [925440434] [2022-04-15 08:54:12,015 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:12,015 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:12,024 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:12,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [136133448] [2022-04-15 08:54:12,024 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:54:12,024 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:12,024 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:12,036 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-15 08:54:12,036 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-15 08:54:12,072 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:54:12,072 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:12,073 INFO L263 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 08:54:12,082 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:12,083 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:12,201 INFO L272 TraceCheckUtils]: 0: Hoare triple {13974#true} call ULTIMATE.init(); {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L290 TraceCheckUtils]: 1: Hoare triple {13974#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);~counter~0 := 0; {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L290 TraceCheckUtils]: 2: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13974#true} {13974#true} #108#return; {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L272 TraceCheckUtils]: 4: Hoare triple {13974#true} call #t~ret9 := main(); {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L290 TraceCheckUtils]: 5: Hoare triple {13974#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L272 TraceCheckUtils]: 6: Hoare triple {13974#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L290 TraceCheckUtils]: 7: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L290 TraceCheckUtils]: 8: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L290 TraceCheckUtils]: 9: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13974#true} {13974#true} #94#return; {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L272 TraceCheckUtils]: 11: Hoare triple {13974#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13974#true} is VALID [2022-04-15 08:54:12,202 INFO L290 TraceCheckUtils]: 12: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 13: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 14: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13974#true} {13974#true} #96#return; {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 16: Hoare triple {13974#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 17: Hoare triple {13974#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 18: Hoare triple {13974#true} assume !!(#t~post6 < 20);havoc #t~post6; {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 19: Hoare triple {13974#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 20: Hoare triple {13974#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 21: Hoare triple {13974#true} assume !!(#t~post7 < 20);havoc #t~post7; {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 22: Hoare triple {13974#true} assume !(~c~0 >= ~b~0); {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 23: Hoare triple {13974#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; {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 24: Hoare triple {13974#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13974#true} is VALID [2022-04-15 08:54:12,203 INFO L290 TraceCheckUtils]: 25: Hoare triple {13974#true} assume !!(#t~post6 < 20);havoc #t~post6; {13974#true} is VALID [2022-04-15 08:54:12,208 INFO L290 TraceCheckUtils]: 26: Hoare triple {13974#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-15 08:54:12,208 INFO L290 TraceCheckUtils]: 27: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-15 08:54:12,208 INFO L290 TraceCheckUtils]: 28: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-15 08:54:12,209 INFO L290 TraceCheckUtils]: 29: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-15 08:54:12,209 INFO L290 TraceCheckUtils]: 30: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-15 08:54:12,209 INFO L290 TraceCheckUtils]: 31: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post8 < 20);havoc #t~post8; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-15 08:54:12,209 INFO L272 TraceCheckUtils]: 32: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13974#true} is VALID [2022-04-15 08:54:12,209 INFO L290 TraceCheckUtils]: 33: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-15 08:54:12,210 INFO L290 TraceCheckUtils]: 34: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-15 08:54:12,210 INFO L290 TraceCheckUtils]: 35: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-15 08:54:12,210 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13974#true} {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #98#return; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-15 08:54:12,210 INFO L272 TraceCheckUtils]: 37: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13974#true} is VALID [2022-04-15 08:54:12,210 INFO L290 TraceCheckUtils]: 38: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-15 08:54:12,210 INFO L290 TraceCheckUtils]: 39: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-15 08:54:12,211 INFO L290 TraceCheckUtils]: 40: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-15 08:54:12,211 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {13974#true} {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #100#return; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-15 08:54:12,212 INFO L272 TraceCheckUtils]: 42: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14106#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:54:12,212 INFO L290 TraceCheckUtils]: 43: Hoare triple {14106#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14110#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:54:12,212 INFO L290 TraceCheckUtils]: 44: Hoare triple {14110#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13975#false} is VALID [2022-04-15 08:54:12,212 INFO L290 TraceCheckUtils]: 45: Hoare triple {13975#false} assume !false; {13975#false} is VALID [2022-04-15 08:54:12,212 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-15 08:54:12,213 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:54:12,213 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:12,213 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [925440434] [2022-04-15 08:54:12,213 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:12,213 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [136133448] [2022-04-15 08:54:12,213 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [136133448] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:12,213 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:12,213 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:54:12,213 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:12,213 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [962353199] [2022-04-15 08:54:12,213 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [962353199] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:12,213 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:12,214 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:54:12,214 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1942208063] [2022-04-15 08:54:12,214 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:12,214 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-15 08:54:12,214 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:12,214 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), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:54:12,237 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-15 08:54:12,237 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:54:12,237 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:12,237 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:54:12,237 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 08:54:12,237 INFO L87 Difference]: Start difference. First operand 258 states and 351 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:54:12,956 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:12,956 INFO L93 Difference]: Finished difference Result 332 states and 473 transitions. [2022-04-15 08:54:12,956 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 08:54:12,956 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-15 08:54:12,956 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:12,956 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:54:12,957 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-15 08:54:12,957 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:54:12,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-15 08:54:12,958 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-15 08:54:13,014 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:13,021 INFO L225 Difference]: With dead ends: 332 [2022-04-15 08:54:13,022 INFO L226 Difference]: Without dead ends: 330 [2022-04-15 08:54:13,023 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 42 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-15 08:54:13,025 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 10 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 153 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:13,025 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 153 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:54:13,026 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 330 states. [2022-04-15 08:54:13,634 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 330 to 321. [2022-04-15 08:54:13,635 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:13,635 INFO L82 GeneralOperation]: Start isEquivalent. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-15 08:54:13,636 INFO L74 IsIncluded]: Start isIncluded. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-15 08:54:13,636 INFO L87 Difference]: Start difference. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-15 08:54:13,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:13,643 INFO L93 Difference]: Finished difference Result 330 states and 471 transitions. [2022-04-15 08:54:13,644 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 471 transitions. [2022-04-15 08:54:13,644 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:13,644 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:13,645 INFO L74 IsIncluded]: Start isIncluded. First operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 330 states. [2022-04-15 08:54:13,645 INFO L87 Difference]: Start difference. First operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 330 states. [2022-04-15 08:54:13,652 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:13,652 INFO L93 Difference]: Finished difference Result 330 states and 471 transitions. [2022-04-15 08:54:13,652 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 471 transitions. [2022-04-15 08:54:13,653 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:13,653 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:13,653 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:13,653 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:13,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-15 08:54:13,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 321 states to 321 states and 462 transitions. [2022-04-15 08:54:13,661 INFO L78 Accepts]: Start accepts. Automaton has 321 states and 462 transitions. Word has length 46 [2022-04-15 08:54:13,661 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:13,661 INFO L478 AbstractCegarLoop]: Abstraction has 321 states and 462 transitions. [2022-04-15 08:54:13,662 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 08:54:13,662 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 321 states and 462 transitions. [2022-04-15 08:54:14,160 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 462 edges. 462 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:14,160 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 462 transitions. [2022-04-15 08:54:14,161 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-15 08:54:14,161 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:14,161 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:54:14,177 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Ended with exit code 0 [2022-04-15 08:54:14,377 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-15 08:54:14,377 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:14,378 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:14,378 INFO L85 PathProgramCache]: Analyzing trace with hash -522797827, now seen corresponding path program 1 times [2022-04-15 08:54:14,378 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:14,378 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [488475955] [2022-04-15 08:54:14,378 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:14,378 INFO L85 PathProgramCache]: Analyzing trace with hash -522797827, now seen corresponding path program 2 times [2022-04-15 08:54:14,378 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:14,378 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [285123975] [2022-04-15 08:54:14,379 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:14,379 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:14,388 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:14,389 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1849370636] [2022-04-15 08:54:14,389 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:54:14,389 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:14,389 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:14,390 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-15 08:54:14,391 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-15 08:54:14,431 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:54:14,431 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:14,432 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 08:54:14,446 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:14,447 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:14,667 INFO L272 TraceCheckUtils]: 0: Hoare triple {16084#true} call ULTIMATE.init(); {16084#true} is VALID [2022-04-15 08:54:14,667 INFO L290 TraceCheckUtils]: 1: Hoare triple {16084#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);~counter~0 := 0; {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,668 INFO L290 TraceCheckUtils]: 2: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,668 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16092#(<= ~counter~0 0)} {16084#true} #108#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,668 INFO L272 TraceCheckUtils]: 4: Hoare triple {16092#(<= ~counter~0 0)} call #t~ret9 := main(); {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,669 INFO L290 TraceCheckUtils]: 5: Hoare triple {16092#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,669 INFO L272 TraceCheckUtils]: 6: Hoare triple {16092#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,669 INFO L290 TraceCheckUtils]: 7: Hoare triple {16092#(<= ~counter~0 0)} ~cond := #in~cond; {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,669 INFO L290 TraceCheckUtils]: 8: Hoare triple {16092#(<= ~counter~0 0)} assume !(0 == ~cond); {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,670 INFO L290 TraceCheckUtils]: 9: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,670 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16092#(<= ~counter~0 0)} {16092#(<= ~counter~0 0)} #94#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,670 INFO L272 TraceCheckUtils]: 11: Hoare triple {16092#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,671 INFO L290 TraceCheckUtils]: 12: Hoare triple {16092#(<= ~counter~0 0)} ~cond := #in~cond; {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,671 INFO L290 TraceCheckUtils]: 13: Hoare triple {16092#(<= ~counter~0 0)} assume !(0 == ~cond); {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,671 INFO L290 TraceCheckUtils]: 14: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,672 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16092#(<= ~counter~0 0)} {16092#(<= ~counter~0 0)} #96#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,672 INFO L290 TraceCheckUtils]: 16: Hoare triple {16092#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16092#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:14,672 INFO L290 TraceCheckUtils]: 17: Hoare triple {16092#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16141#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:14,673 INFO L290 TraceCheckUtils]: 18: Hoare triple {16141#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {16141#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:14,673 INFO L290 TraceCheckUtils]: 19: Hoare triple {16141#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16141#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:14,673 INFO L290 TraceCheckUtils]: 20: Hoare triple {16141#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16151#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:14,674 INFO L290 TraceCheckUtils]: 21: Hoare triple {16151#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {16151#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:14,674 INFO L290 TraceCheckUtils]: 22: Hoare triple {16151#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {16151#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:14,674 INFO L290 TraceCheckUtils]: 23: Hoare triple {16151#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,675 INFO L290 TraceCheckUtils]: 24: Hoare triple {16161#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,675 INFO L272 TraceCheckUtils]: 25: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,691 INFO L290 TraceCheckUtils]: 26: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,692 INFO L290 TraceCheckUtils]: 27: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,692 INFO L290 TraceCheckUtils]: 28: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,693 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #98#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,694 INFO L272 TraceCheckUtils]: 30: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,694 INFO L290 TraceCheckUtils]: 31: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,694 INFO L290 TraceCheckUtils]: 32: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,695 INFO L290 TraceCheckUtils]: 33: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,696 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #100#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,696 INFO L272 TraceCheckUtils]: 35: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,697 INFO L290 TraceCheckUtils]: 36: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,697 INFO L290 TraceCheckUtils]: 37: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,698 INFO L290 TraceCheckUtils]: 38: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,698 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #102#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,699 INFO L272 TraceCheckUtils]: 40: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,699 INFO L290 TraceCheckUtils]: 41: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,700 INFO L290 TraceCheckUtils]: 42: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,700 INFO L290 TraceCheckUtils]: 43: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,701 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #104#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,701 INFO L290 TraceCheckUtils]: 45: Hoare triple {16161#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,702 INFO L290 TraceCheckUtils]: 46: Hoare triple {16161#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {16161#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:14,702 INFO L290 TraceCheckUtils]: 47: Hoare triple {16161#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16234#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:14,703 INFO L290 TraceCheckUtils]: 48: Hoare triple {16234#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {16234#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:14,703 INFO L290 TraceCheckUtils]: 49: Hoare triple {16234#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {16234#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:14,703 INFO L290 TraceCheckUtils]: 50: Hoare triple {16234#(<= ~counter~0 4)} ~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; {16234#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:14,704 INFO L290 TraceCheckUtils]: 51: Hoare triple {16234#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16247#(<= |main_#t~post6| 4)} is VALID [2022-04-15 08:54:14,704 INFO L290 TraceCheckUtils]: 52: Hoare triple {16247#(<= |main_#t~post6| 4)} assume !(#t~post6 < 20);havoc #t~post6; {16085#false} is VALID [2022-04-15 08:54:14,704 INFO L272 TraceCheckUtils]: 53: Hoare triple {16085#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)); {16085#false} is VALID [2022-04-15 08:54:14,704 INFO L290 TraceCheckUtils]: 54: Hoare triple {16085#false} ~cond := #in~cond; {16085#false} is VALID [2022-04-15 08:54:14,704 INFO L290 TraceCheckUtils]: 55: Hoare triple {16085#false} assume 0 == ~cond; {16085#false} is VALID [2022-04-15 08:54:14,705 INFO L290 TraceCheckUtils]: 56: Hoare triple {16085#false} assume !false; {16085#false} is VALID [2022-04-15 08:54:14,705 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 8 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:54:14,705 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:54:14,980 INFO L290 TraceCheckUtils]: 56: Hoare triple {16085#false} assume !false; {16085#false} is VALID [2022-04-15 08:54:14,981 INFO L290 TraceCheckUtils]: 55: Hoare triple {16085#false} assume 0 == ~cond; {16085#false} is VALID [2022-04-15 08:54:14,981 INFO L290 TraceCheckUtils]: 54: Hoare triple {16085#false} ~cond := #in~cond; {16085#false} is VALID [2022-04-15 08:54:14,981 INFO L272 TraceCheckUtils]: 53: Hoare triple {16085#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)); {16085#false} is VALID [2022-04-15 08:54:14,981 INFO L290 TraceCheckUtils]: 52: Hoare triple {16275#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {16085#false} is VALID [2022-04-15 08:54:14,981 INFO L290 TraceCheckUtils]: 51: Hoare triple {16279#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16275#(< |main_#t~post6| 20)} is VALID [2022-04-15 08:54:14,982 INFO L290 TraceCheckUtils]: 50: Hoare triple {16279#(< ~counter~0 20)} ~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; {16279#(< ~counter~0 20)} is VALID [2022-04-15 08:54:14,982 INFO L290 TraceCheckUtils]: 49: Hoare triple {16279#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {16279#(< ~counter~0 20)} is VALID [2022-04-15 08:54:14,982 INFO L290 TraceCheckUtils]: 48: Hoare triple {16279#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {16279#(< ~counter~0 20)} is VALID [2022-04-15 08:54:14,983 INFO L290 TraceCheckUtils]: 47: Hoare triple {16292#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16279#(< ~counter~0 20)} is VALID [2022-04-15 08:54:14,983 INFO L290 TraceCheckUtils]: 46: Hoare triple {16292#(< ~counter~0 19)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {16292#(< ~counter~0 19)} is VALID [2022-04-15 08:54:14,983 INFO L290 TraceCheckUtils]: 45: Hoare triple {16292#(< ~counter~0 19)} assume !(~c~0 >= 2 * ~v~0); {16292#(< ~counter~0 19)} is VALID [2022-04-15 08:54:14,984 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {16084#true} {16292#(< ~counter~0 19)} #104#return; {16292#(< ~counter~0 19)} is VALID [2022-04-15 08:54:14,984 INFO L290 TraceCheckUtils]: 43: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-15 08:54:14,984 INFO L290 TraceCheckUtils]: 42: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-15 08:54:14,984 INFO L290 TraceCheckUtils]: 41: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-15 08:54:14,984 INFO L272 TraceCheckUtils]: 40: Hoare triple {16292#(< ~counter~0 19)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {16084#true} is VALID [2022-04-15 08:54:14,984 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16084#true} {16292#(< ~counter~0 19)} #102#return; {16292#(< ~counter~0 19)} is VALID [2022-04-15 08:54:14,985 INFO L290 TraceCheckUtils]: 38: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-15 08:54:14,985 INFO L290 TraceCheckUtils]: 37: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-15 08:54:14,985 INFO L290 TraceCheckUtils]: 36: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-15 08:54:14,985 INFO L272 TraceCheckUtils]: 35: Hoare triple {16292#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16084#true} is VALID [2022-04-15 08:54:14,985 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {16084#true} {16292#(< ~counter~0 19)} #100#return; {16292#(< ~counter~0 19)} is VALID [2022-04-15 08:54:14,985 INFO L290 TraceCheckUtils]: 33: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-15 08:54:14,985 INFO L290 TraceCheckUtils]: 32: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-15 08:54:14,986 INFO L290 TraceCheckUtils]: 31: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-15 08:54:14,986 INFO L272 TraceCheckUtils]: 30: Hoare triple {16292#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16084#true} is VALID [2022-04-15 08:54:14,986 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {16084#true} {16292#(< ~counter~0 19)} #98#return; {16292#(< ~counter~0 19)} is VALID [2022-04-15 08:54:14,986 INFO L290 TraceCheckUtils]: 28: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-15 08:54:14,986 INFO L290 TraceCheckUtils]: 27: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-15 08:54:14,986 INFO L290 TraceCheckUtils]: 26: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-15 08:54:14,986 INFO L272 TraceCheckUtils]: 25: Hoare triple {16292#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16084#true} is VALID [2022-04-15 08:54:14,987 INFO L290 TraceCheckUtils]: 24: Hoare triple {16292#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {16292#(< ~counter~0 19)} is VALID [2022-04-15 08:54:15,004 INFO L290 TraceCheckUtils]: 23: Hoare triple {16365#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16292#(< ~counter~0 19)} is VALID [2022-04-15 08:54:15,004 INFO L290 TraceCheckUtils]: 22: Hoare triple {16365#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {16365#(< ~counter~0 18)} is VALID [2022-04-15 08:54:15,005 INFO L290 TraceCheckUtils]: 21: Hoare triple {16365#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {16365#(< ~counter~0 18)} is VALID [2022-04-15 08:54:15,005 INFO L290 TraceCheckUtils]: 20: Hoare triple {16375#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16365#(< ~counter~0 18)} is VALID [2022-04-15 08:54:15,006 INFO L290 TraceCheckUtils]: 19: Hoare triple {16375#(< ~counter~0 17)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16375#(< ~counter~0 17)} is VALID [2022-04-15 08:54:15,006 INFO L290 TraceCheckUtils]: 18: Hoare triple {16375#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {16375#(< ~counter~0 17)} is VALID [2022-04-15 08:54:15,007 INFO L290 TraceCheckUtils]: 17: Hoare triple {16385#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16375#(< ~counter~0 17)} is VALID [2022-04-15 08:54:15,007 INFO L290 TraceCheckUtils]: 16: Hoare triple {16385#(< ~counter~0 16)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16385#(< ~counter~0 16)} is VALID [2022-04-15 08:54:15,008 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16084#true} {16385#(< ~counter~0 16)} #96#return; {16385#(< ~counter~0 16)} is VALID [2022-04-15 08:54:15,008 INFO L290 TraceCheckUtils]: 14: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-15 08:54:15,008 INFO L290 TraceCheckUtils]: 13: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-15 08:54:15,008 INFO L290 TraceCheckUtils]: 12: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-15 08:54:15,008 INFO L272 TraceCheckUtils]: 11: Hoare triple {16385#(< ~counter~0 16)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16084#true} is VALID [2022-04-15 08:54:15,009 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16084#true} {16385#(< ~counter~0 16)} #94#return; {16385#(< ~counter~0 16)} is VALID [2022-04-15 08:54:15,009 INFO L290 TraceCheckUtils]: 9: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-15 08:54:15,009 INFO L290 TraceCheckUtils]: 8: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-15 08:54:15,009 INFO L290 TraceCheckUtils]: 7: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-15 08:54:15,009 INFO L272 TraceCheckUtils]: 6: Hoare triple {16385#(< ~counter~0 16)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16084#true} is VALID [2022-04-15 08:54:15,009 INFO L290 TraceCheckUtils]: 5: Hoare triple {16385#(< ~counter~0 16)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16385#(< ~counter~0 16)} is VALID [2022-04-15 08:54:15,010 INFO L272 TraceCheckUtils]: 4: Hoare triple {16385#(< ~counter~0 16)} call #t~ret9 := main(); {16385#(< ~counter~0 16)} is VALID [2022-04-15 08:54:15,010 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16385#(< ~counter~0 16)} {16084#true} #108#return; {16385#(< ~counter~0 16)} is VALID [2022-04-15 08:54:15,011 INFO L290 TraceCheckUtils]: 2: Hoare triple {16385#(< ~counter~0 16)} assume true; {16385#(< ~counter~0 16)} is VALID [2022-04-15 08:54:15,011 INFO L290 TraceCheckUtils]: 1: Hoare triple {16084#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);~counter~0 := 0; {16385#(< ~counter~0 16)} is VALID [2022-04-15 08:54:15,011 INFO L272 TraceCheckUtils]: 0: Hoare triple {16084#true} call ULTIMATE.init(); {16084#true} is VALID [2022-04-15 08:54:15,012 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 8 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:54:15,012 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:15,012 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [285123975] [2022-04-15 08:54:15,012 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:15,012 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1849370636] [2022-04-15 08:54:15,012 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1849370636] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:54:15,012 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:54:15,012 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-15 08:54:15,012 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:15,012 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [488475955] [2022-04-15 08:54:15,012 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [488475955] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:15,012 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:15,013 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 08:54:15,013 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1127696330] [2022-04-15 08:54:15,013 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:15,013 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 57 [2022-04-15 08:54:15,013 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:15,013 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:15,049 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:15,049 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 08:54:15,049 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:15,050 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 08:54:15,050 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-15 08:54:15,050 INFO L87 Difference]: Start difference. First operand 321 states and 462 transitions. Second operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:15,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:15,931 INFO L93 Difference]: Finished difference Result 335 states and 475 transitions. [2022-04-15 08:54:15,931 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 08:54:15,931 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 57 [2022-04-15 08:54:15,932 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:15,932 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:15,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-15 08:54:15,933 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:15,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-15 08:54:15,934 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 106 transitions. [2022-04-15 08:54:16,013 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:16,019 INFO L225 Difference]: With dead ends: 335 [2022-04-15 08:54:16,019 INFO L226 Difference]: Without dead ends: 328 [2022-04-15 08:54:16,019 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 101 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-15 08:54:16,020 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 46 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 44 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 44 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:16,020 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 177 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 44 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:54:16,021 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 328 states. [2022-04-15 08:54:16,559 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 328 to 324. [2022-04-15 08:54:16,559 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:16,560 INFO L82 GeneralOperation]: Start isEquivalent. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-15 08:54:16,560 INFO L74 IsIncluded]: Start isIncluded. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-15 08:54:16,561 INFO L87 Difference]: Start difference. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-15 08:54:16,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:16,569 INFO L93 Difference]: Finished difference Result 328 states and 468 transitions. [2022-04-15 08:54:16,569 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 468 transitions. [2022-04-15 08:54:16,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:16,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:16,571 INFO L74 IsIncluded]: Start isIncluded. First operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 328 states. [2022-04-15 08:54:16,571 INFO L87 Difference]: Start difference. First operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 328 states. [2022-04-15 08:54:16,600 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:16,601 INFO L93 Difference]: Finished difference Result 328 states and 468 transitions. [2022-04-15 08:54:16,601 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 468 transitions. [2022-04-15 08:54:16,602 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:16,602 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:16,602 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:16,602 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:16,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-15 08:54:16,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 324 states to 324 states and 465 transitions. [2022-04-15 08:54:16,613 INFO L78 Accepts]: Start accepts. Automaton has 324 states and 465 transitions. Word has length 57 [2022-04-15 08:54:16,613 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:16,613 INFO L478 AbstractCegarLoop]: Abstraction has 324 states and 465 transitions. [2022-04-15 08:54:16,613 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:16,613 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 324 states and 465 transitions. [2022-04-15 08:54:17,125 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 465 edges. 465 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:17,125 INFO L276 IsEmpty]: Start isEmpty. Operand 324 states and 465 transitions. [2022-04-15 08:54:17,126 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-15 08:54:17,126 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:17,126 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:54:17,155 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-15 08:54:17,341 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-15 08:54:17,341 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:17,341 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:17,341 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 1 times [2022-04-15 08:54:17,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:17,341 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [216687602] [2022-04-15 08:54:17,342 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:17,342 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 2 times [2022-04-15 08:54:17,342 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:17,342 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1045952856] [2022-04-15 08:54:17,342 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:17,342 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:17,351 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:17,352 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [985746817] [2022-04-15 08:54:17,352 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:54:17,352 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:17,352 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:17,353 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-15 08:54:17,354 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-15 08:54:17,398 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:54:17,399 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:17,400 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 52 conjunts are in the unsatisfiable core [2022-04-15 08:54:17,409 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:17,410 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:18,103 INFO L272 TraceCheckUtils]: 0: Hoare triple {18417#true} call ULTIMATE.init(); {18417#true} is VALID [2022-04-15 08:54:18,103 INFO L290 TraceCheckUtils]: 1: Hoare triple {18417#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);~counter~0 := 0; {18417#true} is VALID [2022-04-15 08:54:18,103 INFO L290 TraceCheckUtils]: 2: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:18,103 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18417#true} {18417#true} #108#return; {18417#true} is VALID [2022-04-15 08:54:18,103 INFO L272 TraceCheckUtils]: 4: Hoare triple {18417#true} call #t~ret9 := main(); {18417#true} is VALID [2022-04-15 08:54:18,103 INFO L290 TraceCheckUtils]: 5: Hoare triple {18417#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18417#true} is VALID [2022-04-15 08:54:18,103 INFO L272 TraceCheckUtils]: 6: Hoare triple {18417#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-15 08:54:18,104 INFO L290 TraceCheckUtils]: 7: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-15 08:54:18,104 INFO L290 TraceCheckUtils]: 8: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-15 08:54:18,104 INFO L290 TraceCheckUtils]: 9: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:18,104 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18417#true} {18417#true} #94#return; {18417#true} is VALID [2022-04-15 08:54:18,104 INFO L272 TraceCheckUtils]: 11: Hoare triple {18417#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-15 08:54:18,104 INFO L290 TraceCheckUtils]: 12: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-15 08:54:18,104 INFO L290 TraceCheckUtils]: 13: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-15 08:54:18,104 INFO L290 TraceCheckUtils]: 14: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:18,104 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18417#true} {18417#true} #96#return; {18417#true} is VALID [2022-04-15 08:54:18,105 INFO L290 TraceCheckUtils]: 16: Hoare triple {18417#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18470#(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-15 08:54:18,105 INFO L290 TraceCheckUtils]: 17: Hoare triple {18470#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18470#(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-15 08:54:18,105 INFO L290 TraceCheckUtils]: 18: Hoare triple {18470#(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 !!(#t~post6 < 20);havoc #t~post6; {18470#(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-15 08:54:18,106 INFO L290 TraceCheckUtils]: 19: Hoare triple {18470#(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; {18480#(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-15 08:54:18,106 INFO L290 TraceCheckUtils]: 20: Hoare triple {18480#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18480#(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-15 08:54:18,106 INFO L290 TraceCheckUtils]: 21: Hoare triple {18480#(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 !!(#t~post7 < 20);havoc #t~post7; {18480#(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-15 08:54:18,107 INFO L290 TraceCheckUtils]: 22: Hoare triple {18480#(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; {18490#(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-15 08:54:18,107 INFO L290 TraceCheckUtils]: 23: Hoare triple {18490#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18490#(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-15 08:54:18,114 INFO L290 TraceCheckUtils]: 24: Hoare triple {18490#(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 !!(#t~post8 < 20);havoc #t~post8; {18490#(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-15 08:54:18,114 INFO L272 TraceCheckUtils]: 25: Hoare triple {18490#(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)); {18417#true} is VALID [2022-04-15 08:54:18,115 INFO L290 TraceCheckUtils]: 26: Hoare triple {18417#true} ~cond := #in~cond; {18503#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:54:18,115 INFO L290 TraceCheckUtils]: 27: Hoare triple {18503#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:54:18,115 INFO L290 TraceCheckUtils]: 28: Hoare triple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:54:18,116 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} {18490#(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))} #98#return; {18514#(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-15 08:54:18,116 INFO L272 TraceCheckUtils]: 30: Hoare triple {18514#(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)); {18417#true} is VALID [2022-04-15 08:54:18,116 INFO L290 TraceCheckUtils]: 31: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-15 08:54:18,116 INFO L290 TraceCheckUtils]: 32: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-15 08:54:18,117 INFO L290 TraceCheckUtils]: 33: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:18,117 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {18417#true} {18514#(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))} #100#return; {18514#(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-15 08:54:18,117 INFO L272 TraceCheckUtils]: 35: Hoare triple {18514#(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)); {18417#true} is VALID [2022-04-15 08:54:18,117 INFO L290 TraceCheckUtils]: 36: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-15 08:54:18,117 INFO L290 TraceCheckUtils]: 37: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-15 08:54:18,117 INFO L290 TraceCheckUtils]: 38: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:18,118 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {18417#true} {18514#(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; {18514#(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-15 08:54:18,118 INFO L272 TraceCheckUtils]: 40: Hoare triple {18514#(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)); {18417#true} is VALID [2022-04-15 08:54:18,118 INFO L290 TraceCheckUtils]: 41: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-15 08:54:18,118 INFO L290 TraceCheckUtils]: 42: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-15 08:54:18,118 INFO L290 TraceCheckUtils]: 43: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:18,119 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {18417#true} {18514#(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; {18514#(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-15 08:54:18,120 INFO L290 TraceCheckUtils]: 45: Hoare triple {18514#(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); {18514#(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-15 08:54:18,120 INFO L290 TraceCheckUtils]: 46: Hoare triple {18514#(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; {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:54:18,120 INFO L290 TraceCheckUtils]: 47: Hoare triple {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:54:18,121 INFO L290 TraceCheckUtils]: 48: Hoare triple {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:54:18,121 INFO L290 TraceCheckUtils]: 49: Hoare triple {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {18566#(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_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:54:18,122 INFO L290 TraceCheckUtils]: 50: Hoare triple {18566#(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_~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; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-15 08:54:18,122 INFO L290 TraceCheckUtils]: 51: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-15 08:54:18,123 INFO L290 TraceCheckUtils]: 52: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !!(#t~post6 < 20);havoc #t~post6; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-15 08:54:18,123 INFO L290 TraceCheckUtils]: 53: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {18589#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-15 08:54:18,124 INFO L272 TraceCheckUtils]: 54: Hoare triple {18589#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 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)); {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:54:18,124 INFO L290 TraceCheckUtils]: 55: Hoare triple {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:54:18,124 INFO L290 TraceCheckUtils]: 56: Hoare triple {18597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18418#false} is VALID [2022-04-15 08:54:18,124 INFO L290 TraceCheckUtils]: 57: Hoare triple {18418#false} assume !false; {18418#false} is VALID [2022-04-15 08:54:18,125 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 7 proven. 16 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-15 08:54:18,125 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:54:31,113 INFO L290 TraceCheckUtils]: 57: Hoare triple {18418#false} assume !false; {18418#false} is VALID [2022-04-15 08:54:31,114 INFO L290 TraceCheckUtils]: 56: Hoare triple {18597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18418#false} is VALID [2022-04-15 08:54:31,114 INFO L290 TraceCheckUtils]: 55: Hoare triple {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:54:31,115 INFO L272 TraceCheckUtils]: 54: Hoare triple {18613#(= (+ (* 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)); {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:54:31,115 INFO L290 TraceCheckUtils]: 53: Hoare triple {18617#(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); {18613#(= (+ (* 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-15 08:54:31,116 INFO L290 TraceCheckUtils]: 52: Hoare triple {18617#(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 !!(#t~post6 < 20);havoc #t~post6; {18617#(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-15 08:54:31,116 INFO L290 TraceCheckUtils]: 51: Hoare triple {18617#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18617#(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-15 08:54:31,359 INFO L290 TraceCheckUtils]: 50: Hoare triple {18627#(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; {18617#(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-15 08:54:31,360 INFO L290 TraceCheckUtils]: 49: Hoare triple {18627#(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); {18627#(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-15 08:54:31,360 INFO L290 TraceCheckUtils]: 48: Hoare triple {18627#(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 !!(#t~post7 < 20);havoc #t~post7; {18627#(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-15 08:54:31,361 INFO L290 TraceCheckUtils]: 47: Hoare triple {18627#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18627#(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-15 08:54:31,399 INFO L290 TraceCheckUtils]: 46: Hoare triple {18640#(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; {18627#(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-15 08:54:31,400 INFO L290 TraceCheckUtils]: 45: Hoare triple {18640#(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); {18640#(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-15 08:54:31,400 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {18417#true} {18640#(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))))} #104#return; {18640#(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-15 08:54:31,400 INFO L290 TraceCheckUtils]: 43: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:31,400 INFO L290 TraceCheckUtils]: 42: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-15 08:54:31,401 INFO L290 TraceCheckUtils]: 41: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-15 08:54:31,401 INFO L272 TraceCheckUtils]: 40: Hoare triple {18640#(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)); {18417#true} is VALID [2022-04-15 08:54:31,401 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {18417#true} {18640#(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))))} #102#return; {18640#(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-15 08:54:31,401 INFO L290 TraceCheckUtils]: 38: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:31,401 INFO L290 TraceCheckUtils]: 37: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-15 08:54:31,402 INFO L290 TraceCheckUtils]: 36: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-15 08:54:31,402 INFO L272 TraceCheckUtils]: 35: Hoare triple {18640#(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)); {18417#true} is VALID [2022-04-15 08:54:31,402 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {18417#true} {18640#(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))))} #100#return; {18640#(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-15 08:54:31,402 INFO L290 TraceCheckUtils]: 33: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:31,402 INFO L290 TraceCheckUtils]: 32: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-15 08:54:31,403 INFO L290 TraceCheckUtils]: 31: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-15 08:54:31,403 INFO L272 TraceCheckUtils]: 30: Hoare triple {18640#(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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18417#true} is VALID [2022-04-15 08:54:31,404 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} {18692#(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)))) (= (+ 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))))} #98#return; {18640#(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-15 08:54:31,404 INFO L290 TraceCheckUtils]: 28: Hoare triple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:54:31,404 INFO L290 TraceCheckUtils]: 27: Hoare triple {18702#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:54:31,404 INFO L290 TraceCheckUtils]: 26: Hoare triple {18417#true} ~cond := #in~cond; {18702#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:54:31,405 INFO L272 TraceCheckUtils]: 25: Hoare triple {18692#(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)))) (= (+ 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)); {18417#true} is VALID [2022-04-15 08:54:31,405 INFO L290 TraceCheckUtils]: 24: Hoare triple {18692#(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)))) (= (+ 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 !!(#t~post8 < 20);havoc #t~post8; {18692#(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)))) (= (+ 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-15 08:54:31,406 INFO L290 TraceCheckUtils]: 23: Hoare triple {18692#(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)))) (= (+ 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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18692#(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)))) (= (+ 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-15 08:54:31,406 INFO L290 TraceCheckUtils]: 22: Hoare triple {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {18692#(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)))) (= (+ 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-15 08:54:31,407 INFO L290 TraceCheckUtils]: 21: Hoare triple {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post7 < 20);havoc #t~post7; {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-15 08:54:31,407 INFO L290 TraceCheckUtils]: 20: Hoare triple {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-15 08:54:31,408 INFO L290 TraceCheckUtils]: 19: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-15 08:54:31,408 INFO L290 TraceCheckUtils]: 18: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post6 < 20);havoc #t~post6; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-15 08:54:31,409 INFO L290 TraceCheckUtils]: 17: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-15 08:54:31,409 INFO L290 TraceCheckUtils]: 16: Hoare triple {18417#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-15 08:54:31,409 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18417#true} {18417#true} #96#return; {18417#true} is VALID [2022-04-15 08:54:31,409 INFO L290 TraceCheckUtils]: 14: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L290 TraceCheckUtils]: 13: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L290 TraceCheckUtils]: 12: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L272 TraceCheckUtils]: 11: Hoare triple {18417#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18417#true} {18417#true} #94#return; {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L290 TraceCheckUtils]: 9: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L290 TraceCheckUtils]: 8: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L290 TraceCheckUtils]: 7: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L272 TraceCheckUtils]: 6: Hoare triple {18417#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L290 TraceCheckUtils]: 5: Hoare triple {18417#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L272 TraceCheckUtils]: 4: Hoare triple {18417#true} call #t~ret9 := main(); {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18417#true} {18417#true} #108#return; {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L290 TraceCheckUtils]: 2: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L290 TraceCheckUtils]: 1: Hoare triple {18417#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);~counter~0 := 0; {18417#true} is VALID [2022-04-15 08:54:31,410 INFO L272 TraceCheckUtils]: 0: Hoare triple {18417#true} call ULTIMATE.init(); {18417#true} is VALID [2022-04-15 08:54:31,411 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 7 proven. 16 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-15 08:54:31,411 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:31,411 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1045952856] [2022-04-15 08:54:31,411 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:31,411 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [985746817] [2022-04-15 08:54:31,411 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [985746817] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:54:31,411 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:54:31,411 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-15 08:54:31,412 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:31,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [216687602] [2022-04-15 08:54:31,412 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [216687602] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:31,412 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:31,412 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 08:54:31,412 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1181490347] [2022-04-15 08:54:31,412 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:31,412 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 58 [2022-04-15 08:54:31,412 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:31,412 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:31,449 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-15 08:54:31,449 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 08:54:31,449 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:31,450 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 08:54:31,450 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=347, Unknown=0, NotChecked=0, Total=420 [2022-04-15 08:54:31,450 INFO L87 Difference]: Start difference. First operand 324 states and 465 transitions. Second operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:33,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:33,725 INFO L93 Difference]: Finished difference Result 384 states and 559 transitions. [2022-04-15 08:54:33,725 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 08:54:33,725 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 58 [2022-04-15 08:54:33,725 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:33,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:33,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 149 transitions. [2022-04-15 08:54:33,727 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:33,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 149 transitions. [2022-04-15 08:54:33,729 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 149 transitions. [2022-04-15 08:54:33,862 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:33,870 INFO L225 Difference]: With dead ends: 384 [2022-04-15 08:54:33,870 INFO L226 Difference]: Without dead ends: 381 [2022-04-15 08:54:33,870 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 95 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 95 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=101, Invalid=499, Unknown=0, NotChecked=0, Total=600 [2022-04-15 08:54:33,871 INFO L913 BasicCegarLoop]: 57 mSDtfsCounter, 66 mSDsluCounter, 342 mSDsCounter, 0 mSdLazyCounter, 541 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 399 SdHoareTripleChecker+Invalid, 586 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 541 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:33,871 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [82 Valid, 399 Invalid, 586 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 541 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-15 08:54:33,871 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 381 states. [2022-04-15 08:54:34,556 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 381 to 377. [2022-04-15 08:54:34,556 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:34,557 INFO L82 GeneralOperation]: Start isEquivalent. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-15 08:54:34,558 INFO L74 IsIncluded]: Start isIncluded. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-15 08:54:34,558 INFO L87 Difference]: Start difference. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-15 08:54:34,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:34,566 INFO L93 Difference]: Finished difference Result 381 states and 555 transitions. [2022-04-15 08:54:34,566 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 555 transitions. [2022-04-15 08:54:34,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:34,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:34,568 INFO L74 IsIncluded]: Start isIncluded. First operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) Second operand 381 states. [2022-04-15 08:54:34,568 INFO L87 Difference]: Start difference. First operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) Second operand 381 states. [2022-04-15 08:54:34,577 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:34,577 INFO L93 Difference]: Finished difference Result 381 states and 555 transitions. [2022-04-15 08:54:34,577 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 555 transitions. [2022-04-15 08:54:34,578 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:34,578 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:34,578 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:34,578 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:34,579 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-15 08:54:34,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 377 states to 377 states and 551 transitions. [2022-04-15 08:54:34,588 INFO L78 Accepts]: Start accepts. Automaton has 377 states and 551 transitions. Word has length 58 [2022-04-15 08:54:34,588 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:34,589 INFO L478 AbstractCegarLoop]: Abstraction has 377 states and 551 transitions. [2022-04-15 08:54:34,589 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:34,589 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 377 states and 551 transitions. [2022-04-15 08:54:35,180 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 551 edges. 551 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:35,181 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 551 transitions. [2022-04-15 08:54:35,181 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-15 08:54:35,181 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:35,181 INFO L499 BasicCegarLoop]: trace histogram [5, 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, 1, 1, 1, 1, 1] [2022-04-15 08:54:35,198 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-15 08:54:35,382 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-15 08:54:35,382 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:35,382 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:35,382 INFO L85 PathProgramCache]: Analyzing trace with hash 27973409, now seen corresponding path program 1 times [2022-04-15 08:54:35,382 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:35,382 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [618849431] [2022-04-15 08:54:35,383 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:35,383 INFO L85 PathProgramCache]: Analyzing trace with hash 27973409, now seen corresponding path program 2 times [2022-04-15 08:54:35,383 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:35,383 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [406742919] [2022-04-15 08:54:35,383 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:35,383 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:35,397 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:35,398 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [689779770] [2022-04-15 08:54:35,398 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:54:35,398 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:35,398 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:35,399 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-15 08:54:35,400 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-15 08:54:35,445 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:54:35,446 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:35,447 INFO L263 TraceCheckSpWp]: Trace formula consists of 214 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 08:54:35,459 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:35,460 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:35,709 INFO L272 TraceCheckUtils]: 0: Hoare triple {21077#true} call ULTIMATE.init(); {21077#true} is VALID [2022-04-15 08:54:35,709 INFO L290 TraceCheckUtils]: 1: Hoare triple {21077#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);~counter~0 := 0; {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,710 INFO L290 TraceCheckUtils]: 2: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,710 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21085#(<= ~counter~0 0)} {21077#true} #108#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,710 INFO L272 TraceCheckUtils]: 4: Hoare triple {21085#(<= ~counter~0 0)} call #t~ret9 := main(); {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,710 INFO L290 TraceCheckUtils]: 5: Hoare triple {21085#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,711 INFO L272 TraceCheckUtils]: 6: Hoare triple {21085#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,711 INFO L290 TraceCheckUtils]: 7: Hoare triple {21085#(<= ~counter~0 0)} ~cond := #in~cond; {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,711 INFO L290 TraceCheckUtils]: 8: Hoare triple {21085#(<= ~counter~0 0)} assume !(0 == ~cond); {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,712 INFO L290 TraceCheckUtils]: 9: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,712 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21085#(<= ~counter~0 0)} {21085#(<= ~counter~0 0)} #94#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,712 INFO L272 TraceCheckUtils]: 11: Hoare triple {21085#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,713 INFO L290 TraceCheckUtils]: 12: Hoare triple {21085#(<= ~counter~0 0)} ~cond := #in~cond; {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,713 INFO L290 TraceCheckUtils]: 13: Hoare triple {21085#(<= ~counter~0 0)} assume !(0 == ~cond); {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,713 INFO L290 TraceCheckUtils]: 14: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,713 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21085#(<= ~counter~0 0)} {21085#(<= ~counter~0 0)} #96#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,714 INFO L290 TraceCheckUtils]: 16: Hoare triple {21085#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21085#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:35,714 INFO L290 TraceCheckUtils]: 17: Hoare triple {21085#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21134#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:35,715 INFO L290 TraceCheckUtils]: 18: Hoare triple {21134#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {21134#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:35,715 INFO L290 TraceCheckUtils]: 19: Hoare triple {21134#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21134#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:35,715 INFO L290 TraceCheckUtils]: 20: Hoare triple {21134#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21144#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:35,716 INFO L290 TraceCheckUtils]: 21: Hoare triple {21144#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {21144#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:35,716 INFO L290 TraceCheckUtils]: 22: Hoare triple {21144#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {21144#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:35,716 INFO L290 TraceCheckUtils]: 23: Hoare triple {21144#(<= ~counter~0 2)} ~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; {21144#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:35,717 INFO L290 TraceCheckUtils]: 24: Hoare triple {21144#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21157#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:35,717 INFO L290 TraceCheckUtils]: 25: Hoare triple {21157#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {21157#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:35,717 INFO L290 TraceCheckUtils]: 26: Hoare triple {21157#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21157#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:35,717 INFO L290 TraceCheckUtils]: 27: Hoare triple {21157#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21167#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:35,718 INFO L290 TraceCheckUtils]: 28: Hoare triple {21167#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {21167#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:35,718 INFO L290 TraceCheckUtils]: 29: Hoare triple {21167#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21167#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:35,718 INFO L290 TraceCheckUtils]: 30: Hoare triple {21167#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,719 INFO L290 TraceCheckUtils]: 31: Hoare triple {21177#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,719 INFO L272 TraceCheckUtils]: 32: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,719 INFO L290 TraceCheckUtils]: 33: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,720 INFO L290 TraceCheckUtils]: 34: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,720 INFO L290 TraceCheckUtils]: 35: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,720 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #98#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,721 INFO L272 TraceCheckUtils]: 37: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,721 INFO L290 TraceCheckUtils]: 38: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,721 INFO L290 TraceCheckUtils]: 39: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,730 INFO L290 TraceCheckUtils]: 40: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,731 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #100#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,732 INFO L272 TraceCheckUtils]: 42: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,732 INFO L290 TraceCheckUtils]: 43: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,732 INFO L290 TraceCheckUtils]: 44: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,732 INFO L290 TraceCheckUtils]: 45: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,733 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #102#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,733 INFO L272 TraceCheckUtils]: 47: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,734 INFO L290 TraceCheckUtils]: 48: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,734 INFO L290 TraceCheckUtils]: 49: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,734 INFO L290 TraceCheckUtils]: 50: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,735 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #104#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,735 INFO L290 TraceCheckUtils]: 52: Hoare triple {21177#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,735 INFO L290 TraceCheckUtils]: 53: Hoare triple {21177#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {21177#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:35,736 INFO L290 TraceCheckUtils]: 54: Hoare triple {21177#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21250#(<= |main_#t~post7| 5)} is VALID [2022-04-15 08:54:35,736 INFO L290 TraceCheckUtils]: 55: Hoare triple {21250#(<= |main_#t~post7| 5)} assume !(#t~post7 < 20);havoc #t~post7; {21078#false} is VALID [2022-04-15 08:54:35,736 INFO L290 TraceCheckUtils]: 56: Hoare triple {21078#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; {21078#false} is VALID [2022-04-15 08:54:35,736 INFO L290 TraceCheckUtils]: 57: Hoare triple {21078#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21078#false} is VALID [2022-04-15 08:54:35,736 INFO L290 TraceCheckUtils]: 58: Hoare triple {21078#false} assume !(#t~post6 < 20);havoc #t~post6; {21078#false} is VALID [2022-04-15 08:54:35,736 INFO L272 TraceCheckUtils]: 59: Hoare triple {21078#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)); {21078#false} is VALID [2022-04-15 08:54:35,736 INFO L290 TraceCheckUtils]: 60: Hoare triple {21078#false} ~cond := #in~cond; {21078#false} is VALID [2022-04-15 08:54:35,736 INFO L290 TraceCheckUtils]: 61: Hoare triple {21078#false} assume 0 == ~cond; {21078#false} is VALID [2022-04-15 08:54:35,736 INFO L290 TraceCheckUtils]: 62: Hoare triple {21078#false} assume !false; {21078#false} is VALID [2022-04-15 08:54:35,737 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 13 proven. 10 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:54:35,737 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:54:36,030 INFO L290 TraceCheckUtils]: 62: Hoare triple {21078#false} assume !false; {21078#false} is VALID [2022-04-15 08:54:36,030 INFO L290 TraceCheckUtils]: 61: Hoare triple {21078#false} assume 0 == ~cond; {21078#false} is VALID [2022-04-15 08:54:36,031 INFO L290 TraceCheckUtils]: 60: Hoare triple {21078#false} ~cond := #in~cond; {21078#false} is VALID [2022-04-15 08:54:36,031 INFO L272 TraceCheckUtils]: 59: Hoare triple {21078#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)); {21078#false} is VALID [2022-04-15 08:54:36,031 INFO L290 TraceCheckUtils]: 58: Hoare triple {21078#false} assume !(#t~post6 < 20);havoc #t~post6; {21078#false} is VALID [2022-04-15 08:54:36,031 INFO L290 TraceCheckUtils]: 57: Hoare triple {21078#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21078#false} is VALID [2022-04-15 08:54:36,031 INFO L290 TraceCheckUtils]: 56: Hoare triple {21078#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; {21078#false} is VALID [2022-04-15 08:54:36,031 INFO L290 TraceCheckUtils]: 55: Hoare triple {21296#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {21078#false} is VALID [2022-04-15 08:54:36,031 INFO L290 TraceCheckUtils]: 54: Hoare triple {21300#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21296#(< |main_#t~post7| 20)} is VALID [2022-04-15 08:54:36,032 INFO L290 TraceCheckUtils]: 53: Hoare triple {21300#(< ~counter~0 20)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {21300#(< ~counter~0 20)} is VALID [2022-04-15 08:54:36,032 INFO L290 TraceCheckUtils]: 52: Hoare triple {21300#(< ~counter~0 20)} assume !(~c~0 >= 2 * ~v~0); {21300#(< ~counter~0 20)} is VALID [2022-04-15 08:54:36,032 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21077#true} {21300#(< ~counter~0 20)} #104#return; {21300#(< ~counter~0 20)} is VALID [2022-04-15 08:54:36,032 INFO L290 TraceCheckUtils]: 50: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-15 08:54:36,032 INFO L290 TraceCheckUtils]: 49: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-15 08:54:36,033 INFO L290 TraceCheckUtils]: 48: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-15 08:54:36,033 INFO L272 TraceCheckUtils]: 47: Hoare triple {21300#(< ~counter~0 20)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21077#true} is VALID [2022-04-15 08:54:36,033 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21077#true} {21300#(< ~counter~0 20)} #102#return; {21300#(< ~counter~0 20)} is VALID [2022-04-15 08:54:36,033 INFO L290 TraceCheckUtils]: 45: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-15 08:54:36,033 INFO L290 TraceCheckUtils]: 44: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-15 08:54:36,033 INFO L290 TraceCheckUtils]: 43: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-15 08:54:36,033 INFO L272 TraceCheckUtils]: 42: Hoare triple {21300#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21077#true} is VALID [2022-04-15 08:54:36,034 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21077#true} {21300#(< ~counter~0 20)} #100#return; {21300#(< ~counter~0 20)} is VALID [2022-04-15 08:54:36,034 INFO L290 TraceCheckUtils]: 40: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-15 08:54:36,034 INFO L290 TraceCheckUtils]: 39: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-15 08:54:36,034 INFO L290 TraceCheckUtils]: 38: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-15 08:54:36,034 INFO L272 TraceCheckUtils]: 37: Hoare triple {21300#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21077#true} is VALID [2022-04-15 08:54:36,035 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21077#true} {21300#(< ~counter~0 20)} #98#return; {21300#(< ~counter~0 20)} is VALID [2022-04-15 08:54:36,035 INFO L290 TraceCheckUtils]: 35: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-15 08:54:36,035 INFO L290 TraceCheckUtils]: 34: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-15 08:54:36,035 INFO L290 TraceCheckUtils]: 33: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-15 08:54:36,035 INFO L272 TraceCheckUtils]: 32: Hoare triple {21300#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21077#true} is VALID [2022-04-15 08:54:36,035 INFO L290 TraceCheckUtils]: 31: Hoare triple {21300#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {21300#(< ~counter~0 20)} is VALID [2022-04-15 08:54:36,036 INFO L290 TraceCheckUtils]: 30: Hoare triple {21373#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21300#(< ~counter~0 20)} is VALID [2022-04-15 08:54:36,036 INFO L290 TraceCheckUtils]: 29: Hoare triple {21373#(< ~counter~0 19)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21373#(< ~counter~0 19)} is VALID [2022-04-15 08:54:36,036 INFO L290 TraceCheckUtils]: 28: Hoare triple {21373#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {21373#(< ~counter~0 19)} is VALID [2022-04-15 08:54:36,037 INFO L290 TraceCheckUtils]: 27: Hoare triple {21383#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21373#(< ~counter~0 19)} is VALID [2022-04-15 08:54:36,037 INFO L290 TraceCheckUtils]: 26: Hoare triple {21383#(< ~counter~0 18)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21383#(< ~counter~0 18)} is VALID [2022-04-15 08:54:36,037 INFO L290 TraceCheckUtils]: 25: Hoare triple {21383#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {21383#(< ~counter~0 18)} is VALID [2022-04-15 08:54:36,038 INFO L290 TraceCheckUtils]: 24: Hoare triple {21393#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21383#(< ~counter~0 18)} is VALID [2022-04-15 08:54:36,038 INFO L290 TraceCheckUtils]: 23: Hoare triple {21393#(< ~counter~0 17)} ~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; {21393#(< ~counter~0 17)} is VALID [2022-04-15 08:54:36,038 INFO L290 TraceCheckUtils]: 22: Hoare triple {21393#(< ~counter~0 17)} assume !(~c~0 >= ~b~0); {21393#(< ~counter~0 17)} is VALID [2022-04-15 08:54:36,039 INFO L290 TraceCheckUtils]: 21: Hoare triple {21393#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {21393#(< ~counter~0 17)} is VALID [2022-04-15 08:54:36,039 INFO L290 TraceCheckUtils]: 20: Hoare triple {21406#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21393#(< ~counter~0 17)} is VALID [2022-04-15 08:54:36,039 INFO L290 TraceCheckUtils]: 19: Hoare triple {21406#(< ~counter~0 16)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21406#(< ~counter~0 16)} is VALID [2022-04-15 08:54:36,040 INFO L290 TraceCheckUtils]: 18: Hoare triple {21406#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {21406#(< ~counter~0 16)} is VALID [2022-04-15 08:54:36,040 INFO L290 TraceCheckUtils]: 17: Hoare triple {21416#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21406#(< ~counter~0 16)} is VALID [2022-04-15 08:54:36,040 INFO L290 TraceCheckUtils]: 16: Hoare triple {21416#(< ~counter~0 15)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21416#(< ~counter~0 15)} is VALID [2022-04-15 08:54:36,041 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21077#true} {21416#(< ~counter~0 15)} #96#return; {21416#(< ~counter~0 15)} is VALID [2022-04-15 08:54:36,041 INFO L290 TraceCheckUtils]: 14: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-15 08:54:36,041 INFO L290 TraceCheckUtils]: 13: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-15 08:54:36,041 INFO L290 TraceCheckUtils]: 12: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-15 08:54:36,041 INFO L272 TraceCheckUtils]: 11: Hoare triple {21416#(< ~counter~0 15)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21077#true} is VALID [2022-04-15 08:54:36,041 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21077#true} {21416#(< ~counter~0 15)} #94#return; {21416#(< ~counter~0 15)} is VALID [2022-04-15 08:54:36,041 INFO L290 TraceCheckUtils]: 9: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-15 08:54:36,041 INFO L290 TraceCheckUtils]: 8: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-15 08:54:36,041 INFO L290 TraceCheckUtils]: 7: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-15 08:54:36,042 INFO L272 TraceCheckUtils]: 6: Hoare triple {21416#(< ~counter~0 15)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21077#true} is VALID [2022-04-15 08:54:36,042 INFO L290 TraceCheckUtils]: 5: Hoare triple {21416#(< ~counter~0 15)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21416#(< ~counter~0 15)} is VALID [2022-04-15 08:54:36,042 INFO L272 TraceCheckUtils]: 4: Hoare triple {21416#(< ~counter~0 15)} call #t~ret9 := main(); {21416#(< ~counter~0 15)} is VALID [2022-04-15 08:54:36,042 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21416#(< ~counter~0 15)} {21077#true} #108#return; {21416#(< ~counter~0 15)} is VALID [2022-04-15 08:54:36,043 INFO L290 TraceCheckUtils]: 2: Hoare triple {21416#(< ~counter~0 15)} assume true; {21416#(< ~counter~0 15)} is VALID [2022-04-15 08:54:36,043 INFO L290 TraceCheckUtils]: 1: Hoare triple {21077#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);~counter~0 := 0; {21416#(< ~counter~0 15)} is VALID [2022-04-15 08:54:36,043 INFO L272 TraceCheckUtils]: 0: Hoare triple {21077#true} call ULTIMATE.init(); {21077#true} is VALID [2022-04-15 08:54:36,043 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 13 proven. 10 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:54:36,043 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:36,044 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [406742919] [2022-04-15 08:54:36,044 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:36,044 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [689779770] [2022-04-15 08:54:36,044 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [689779770] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:54:36,044 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:54:36,044 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-15 08:54:36,044 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:36,044 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [618849431] [2022-04-15 08:54:36,044 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [618849431] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:36,044 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:36,044 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 08:54:36,044 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [599236149] [2022-04-15 08:54:36,044 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:36,045 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 63 [2022-04-15 08:54:36,045 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:36,045 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:36,076 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-15 08:54:36,076 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 08:54:36,076 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:36,076 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 08:54:36,076 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-15 08:54:36,076 INFO L87 Difference]: Start difference. First operand 377 states and 551 transitions. Second operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:37,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:37,130 INFO L93 Difference]: Finished difference Result 604 states and 873 transitions. [2022-04-15 08:54:37,130 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 08:54:37,130 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 63 [2022-04-15 08:54:37,130 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:37,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:37,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 158 transitions. [2022-04-15 08:54:37,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:37,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 158 transitions. [2022-04-15 08:54:37,133 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 158 transitions. [2022-04-15 08:54:37,235 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-15 08:54:37,245 INFO L225 Difference]: With dead ends: 604 [2022-04-15 08:54:37,246 INFO L226 Difference]: Without dead ends: 440 [2022-04-15 08:54:37,246 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 128 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=206, Unknown=0, NotChecked=0, Total=342 [2022-04-15 08:54:37,247 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 57 mSDsluCounter, 181 mSDsCounter, 0 mSdLazyCounter, 80 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 236 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 80 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:37,247 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [57 Valid, 236 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 80 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:54:37,247 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 440 states. [2022-04-15 08:54:38,022 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 440 to 426. [2022-04-15 08:54:38,022 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:38,022 INFO L82 GeneralOperation]: Start isEquivalent. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-15 08:54:38,023 INFO L74 IsIncluded]: Start isIncluded. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-15 08:54:38,023 INFO L87 Difference]: Start difference. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-15 08:54:38,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:38,033 INFO L93 Difference]: Finished difference Result 440 states and 611 transitions. [2022-04-15 08:54:38,033 INFO L276 IsEmpty]: Start isEmpty. Operand 440 states and 611 transitions. [2022-04-15 08:54:38,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:38,034 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:38,034 INFO L74 IsIncluded]: Start isIncluded. First operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) Second operand 440 states. [2022-04-15 08:54:38,035 INFO L87 Difference]: Start difference. First operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) Second operand 440 states. [2022-04-15 08:54:38,044 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:38,044 INFO L93 Difference]: Finished difference Result 440 states and 611 transitions. [2022-04-15 08:54:38,044 INFO L276 IsEmpty]: Start isEmpty. Operand 440 states and 611 transitions. [2022-04-15 08:54:38,045 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:38,045 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:38,045 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:38,045 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:38,046 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-15 08:54:38,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 426 states to 426 states and 598 transitions. [2022-04-15 08:54:38,057 INFO L78 Accepts]: Start accepts. Automaton has 426 states and 598 transitions. Word has length 63 [2022-04-15 08:54:38,057 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:38,057 INFO L478 AbstractCegarLoop]: Abstraction has 426 states and 598 transitions. [2022-04-15 08:54:38,057 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:38,058 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 426 states and 598 transitions. [2022-04-15 08:54:38,728 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 598 edges. 598 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:38,729 INFO L276 IsEmpty]: Start isEmpty. Operand 426 states and 598 transitions. [2022-04-15 08:54:38,729 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-15 08:54:38,729 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:38,730 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:54:38,761 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Ended with exit code 0 [2022-04-15 08:54:38,961 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-15 08:54:38,961 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:38,962 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:38,962 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 3 times [2022-04-15 08:54:38,962 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:38,962 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [432378001] [2022-04-15 08:54:38,962 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:38,962 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 4 times [2022-04-15 08:54:38,962 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:38,962 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [427805763] [2022-04-15 08:54:38,963 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:38,963 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:38,973 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:38,973 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1662179046] [2022-04-15 08:54:38,984 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:54:38,984 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:38,984 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:38,987 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-15 08:54:39,003 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-15 08:54:39,034 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:54:39,034 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:39,035 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 08:54:39,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:39,048 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:39,341 INFO L272 TraceCheckUtils]: 0: Hoare triple {24416#true} call ULTIMATE.init(); {24416#true} is VALID [2022-04-15 08:54:39,341 INFO L290 TraceCheckUtils]: 1: Hoare triple {24416#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);~counter~0 := 0; {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,342 INFO L290 TraceCheckUtils]: 2: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,342 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24424#(<= ~counter~0 0)} {24416#true} #108#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,342 INFO L272 TraceCheckUtils]: 4: Hoare triple {24424#(<= ~counter~0 0)} call #t~ret9 := main(); {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,343 INFO L290 TraceCheckUtils]: 5: Hoare triple {24424#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,343 INFO L272 TraceCheckUtils]: 6: Hoare triple {24424#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,343 INFO L290 TraceCheckUtils]: 7: Hoare triple {24424#(<= ~counter~0 0)} ~cond := #in~cond; {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,343 INFO L290 TraceCheckUtils]: 8: Hoare triple {24424#(<= ~counter~0 0)} assume !(0 == ~cond); {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,344 INFO L290 TraceCheckUtils]: 9: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,344 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24424#(<= ~counter~0 0)} {24424#(<= ~counter~0 0)} #94#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,344 INFO L272 TraceCheckUtils]: 11: Hoare triple {24424#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,345 INFO L290 TraceCheckUtils]: 12: Hoare triple {24424#(<= ~counter~0 0)} ~cond := #in~cond; {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,345 INFO L290 TraceCheckUtils]: 13: Hoare triple {24424#(<= ~counter~0 0)} assume !(0 == ~cond); {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,345 INFO L290 TraceCheckUtils]: 14: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,346 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24424#(<= ~counter~0 0)} {24424#(<= ~counter~0 0)} #96#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,346 INFO L290 TraceCheckUtils]: 16: Hoare triple {24424#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24424#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:39,347 INFO L290 TraceCheckUtils]: 17: Hoare triple {24424#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24473#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:39,347 INFO L290 TraceCheckUtils]: 18: Hoare triple {24473#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {24473#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:39,347 INFO L290 TraceCheckUtils]: 19: Hoare triple {24473#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24473#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:39,348 INFO L290 TraceCheckUtils]: 20: Hoare triple {24473#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24483#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:39,348 INFO L290 TraceCheckUtils]: 21: Hoare triple {24483#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {24483#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:39,348 INFO L290 TraceCheckUtils]: 22: Hoare triple {24483#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {24483#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:39,348 INFO L290 TraceCheckUtils]: 23: Hoare triple {24483#(<= ~counter~0 2)} ~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; {24483#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:39,349 INFO L290 TraceCheckUtils]: 24: Hoare triple {24483#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24496#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:39,349 INFO L290 TraceCheckUtils]: 25: Hoare triple {24496#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {24496#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:39,349 INFO L290 TraceCheckUtils]: 26: Hoare triple {24496#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24496#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:39,350 INFO L290 TraceCheckUtils]: 27: Hoare triple {24496#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24506#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:39,350 INFO L290 TraceCheckUtils]: 28: Hoare triple {24506#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {24506#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:39,350 INFO L290 TraceCheckUtils]: 29: Hoare triple {24506#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24506#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:39,351 INFO L290 TraceCheckUtils]: 30: Hoare triple {24506#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,351 INFO L290 TraceCheckUtils]: 31: Hoare triple {24516#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,352 INFO L272 TraceCheckUtils]: 32: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,352 INFO L290 TraceCheckUtils]: 33: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,352 INFO L290 TraceCheckUtils]: 34: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,352 INFO L290 TraceCheckUtils]: 35: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,353 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #98#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,353 INFO L272 TraceCheckUtils]: 37: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,354 INFO L290 TraceCheckUtils]: 38: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,354 INFO L290 TraceCheckUtils]: 39: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,354 INFO L290 TraceCheckUtils]: 40: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,355 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #100#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,355 INFO L272 TraceCheckUtils]: 42: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,355 INFO L290 TraceCheckUtils]: 43: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,356 INFO L290 TraceCheckUtils]: 44: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,356 INFO L290 TraceCheckUtils]: 45: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,356 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #102#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,357 INFO L272 TraceCheckUtils]: 47: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,357 INFO L290 TraceCheckUtils]: 48: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,357 INFO L290 TraceCheckUtils]: 49: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,357 INFO L290 TraceCheckUtils]: 50: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,358 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #104#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,358 INFO L290 TraceCheckUtils]: 52: Hoare triple {24516#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,358 INFO L290 TraceCheckUtils]: 53: Hoare triple {24516#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24516#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:39,359 INFO L290 TraceCheckUtils]: 54: Hoare triple {24516#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24589#(<= ~counter~0 6)} is VALID [2022-04-15 08:54:39,359 INFO L290 TraceCheckUtils]: 55: Hoare triple {24589#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {24589#(<= ~counter~0 6)} is VALID [2022-04-15 08:54:39,359 INFO L290 TraceCheckUtils]: 56: Hoare triple {24589#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {24589#(<= ~counter~0 6)} is VALID [2022-04-15 08:54:39,360 INFO L290 TraceCheckUtils]: 57: Hoare triple {24589#(<= ~counter~0 6)} ~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; {24589#(<= ~counter~0 6)} is VALID [2022-04-15 08:54:39,360 INFO L290 TraceCheckUtils]: 58: Hoare triple {24589#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24602#(<= |main_#t~post6| 6)} is VALID [2022-04-15 08:54:39,360 INFO L290 TraceCheckUtils]: 59: Hoare triple {24602#(<= |main_#t~post6| 6)} assume !(#t~post6 < 20);havoc #t~post6; {24417#false} is VALID [2022-04-15 08:54:39,360 INFO L272 TraceCheckUtils]: 60: Hoare triple {24417#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)); {24417#false} is VALID [2022-04-15 08:54:39,361 INFO L290 TraceCheckUtils]: 61: Hoare triple {24417#false} ~cond := #in~cond; {24417#false} is VALID [2022-04-15 08:54:39,361 INFO L290 TraceCheckUtils]: 62: Hoare triple {24417#false} assume 0 == ~cond; {24417#false} is VALID [2022-04-15 08:54:39,361 INFO L290 TraceCheckUtils]: 63: Hoare triple {24417#false} assume !false; {24417#false} is VALID [2022-04-15 08:54:39,361 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:54:39,361 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:54:39,714 INFO L290 TraceCheckUtils]: 63: Hoare triple {24417#false} assume !false; {24417#false} is VALID [2022-04-15 08:54:39,714 INFO L290 TraceCheckUtils]: 62: Hoare triple {24417#false} assume 0 == ~cond; {24417#false} is VALID [2022-04-15 08:54:39,714 INFO L290 TraceCheckUtils]: 61: Hoare triple {24417#false} ~cond := #in~cond; {24417#false} is VALID [2022-04-15 08:54:39,714 INFO L272 TraceCheckUtils]: 60: Hoare triple {24417#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)); {24417#false} is VALID [2022-04-15 08:54:39,715 INFO L290 TraceCheckUtils]: 59: Hoare triple {24630#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {24417#false} is VALID [2022-04-15 08:54:39,715 INFO L290 TraceCheckUtils]: 58: Hoare triple {24634#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24630#(< |main_#t~post6| 20)} is VALID [2022-04-15 08:54:39,715 INFO L290 TraceCheckUtils]: 57: Hoare triple {24634#(< ~counter~0 20)} ~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; {24634#(< ~counter~0 20)} is VALID [2022-04-15 08:54:39,716 INFO L290 TraceCheckUtils]: 56: Hoare triple {24634#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {24634#(< ~counter~0 20)} is VALID [2022-04-15 08:54:39,716 INFO L290 TraceCheckUtils]: 55: Hoare triple {24634#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {24634#(< ~counter~0 20)} is VALID [2022-04-15 08:54:39,716 INFO L290 TraceCheckUtils]: 54: Hoare triple {24647#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24634#(< ~counter~0 20)} is VALID [2022-04-15 08:54:39,717 INFO L290 TraceCheckUtils]: 53: Hoare triple {24647#(< ~counter~0 19)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24647#(< ~counter~0 19)} is VALID [2022-04-15 08:54:39,717 INFO L290 TraceCheckUtils]: 52: Hoare triple {24647#(< ~counter~0 19)} assume !(~c~0 >= 2 * ~v~0); {24647#(< ~counter~0 19)} is VALID [2022-04-15 08:54:39,717 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24416#true} {24647#(< ~counter~0 19)} #104#return; {24647#(< ~counter~0 19)} is VALID [2022-04-15 08:54:39,717 INFO L290 TraceCheckUtils]: 50: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-15 08:54:39,718 INFO L290 TraceCheckUtils]: 49: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-15 08:54:39,718 INFO L290 TraceCheckUtils]: 48: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-15 08:54:39,718 INFO L272 TraceCheckUtils]: 47: Hoare triple {24647#(< ~counter~0 19)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24416#true} is VALID [2022-04-15 08:54:39,718 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24416#true} {24647#(< ~counter~0 19)} #102#return; {24647#(< ~counter~0 19)} is VALID [2022-04-15 08:54:39,718 INFO L290 TraceCheckUtils]: 45: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-15 08:54:39,718 INFO L290 TraceCheckUtils]: 44: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-15 08:54:39,718 INFO L290 TraceCheckUtils]: 43: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-15 08:54:39,718 INFO L272 TraceCheckUtils]: 42: Hoare triple {24647#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24416#true} is VALID [2022-04-15 08:54:39,719 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24416#true} {24647#(< ~counter~0 19)} #100#return; {24647#(< ~counter~0 19)} is VALID [2022-04-15 08:54:39,719 INFO L290 TraceCheckUtils]: 40: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-15 08:54:39,719 INFO L290 TraceCheckUtils]: 39: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-15 08:54:39,719 INFO L290 TraceCheckUtils]: 38: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-15 08:54:39,719 INFO L272 TraceCheckUtils]: 37: Hoare triple {24647#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24416#true} is VALID [2022-04-15 08:54:39,719 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24416#true} {24647#(< ~counter~0 19)} #98#return; {24647#(< ~counter~0 19)} is VALID [2022-04-15 08:54:39,719 INFO L290 TraceCheckUtils]: 35: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-15 08:54:39,720 INFO L290 TraceCheckUtils]: 34: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-15 08:54:39,720 INFO L290 TraceCheckUtils]: 33: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-15 08:54:39,720 INFO L272 TraceCheckUtils]: 32: Hoare triple {24647#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24416#true} is VALID [2022-04-15 08:54:39,720 INFO L290 TraceCheckUtils]: 31: Hoare triple {24647#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {24647#(< ~counter~0 19)} is VALID [2022-04-15 08:54:39,721 INFO L290 TraceCheckUtils]: 30: Hoare triple {24720#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24647#(< ~counter~0 19)} is VALID [2022-04-15 08:54:39,721 INFO L290 TraceCheckUtils]: 29: Hoare triple {24720#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24720#(< ~counter~0 18)} is VALID [2022-04-15 08:54:39,721 INFO L290 TraceCheckUtils]: 28: Hoare triple {24720#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {24720#(< ~counter~0 18)} is VALID [2022-04-15 08:54:39,721 INFO L290 TraceCheckUtils]: 27: Hoare triple {24730#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24720#(< ~counter~0 18)} is VALID [2022-04-15 08:54:39,722 INFO L290 TraceCheckUtils]: 26: Hoare triple {24730#(< ~counter~0 17)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24730#(< ~counter~0 17)} is VALID [2022-04-15 08:54:39,722 INFO L290 TraceCheckUtils]: 25: Hoare triple {24730#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {24730#(< ~counter~0 17)} is VALID [2022-04-15 08:54:39,722 INFO L290 TraceCheckUtils]: 24: Hoare triple {24740#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24730#(< ~counter~0 17)} is VALID [2022-04-15 08:54:39,723 INFO L290 TraceCheckUtils]: 23: Hoare triple {24740#(< ~counter~0 16)} ~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; {24740#(< ~counter~0 16)} is VALID [2022-04-15 08:54:39,723 INFO L290 TraceCheckUtils]: 22: Hoare triple {24740#(< ~counter~0 16)} assume !(~c~0 >= ~b~0); {24740#(< ~counter~0 16)} is VALID [2022-04-15 08:54:39,723 INFO L290 TraceCheckUtils]: 21: Hoare triple {24740#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {24740#(< ~counter~0 16)} is VALID [2022-04-15 08:54:39,724 INFO L290 TraceCheckUtils]: 20: Hoare triple {24753#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24740#(< ~counter~0 16)} is VALID [2022-04-15 08:54:39,724 INFO L290 TraceCheckUtils]: 19: Hoare triple {24753#(< ~counter~0 15)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24753#(< ~counter~0 15)} is VALID [2022-04-15 08:54:39,724 INFO L290 TraceCheckUtils]: 18: Hoare triple {24753#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {24753#(< ~counter~0 15)} is VALID [2022-04-15 08:54:39,725 INFO L290 TraceCheckUtils]: 17: Hoare triple {24763#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24753#(< ~counter~0 15)} is VALID [2022-04-15 08:54:39,725 INFO L290 TraceCheckUtils]: 16: Hoare triple {24763#(< ~counter~0 14)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24763#(< ~counter~0 14)} is VALID [2022-04-15 08:54:39,725 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24416#true} {24763#(< ~counter~0 14)} #96#return; {24763#(< ~counter~0 14)} is VALID [2022-04-15 08:54:39,725 INFO L290 TraceCheckUtils]: 14: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-15 08:54:39,725 INFO L290 TraceCheckUtils]: 13: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-15 08:54:39,725 INFO L290 TraceCheckUtils]: 12: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-15 08:54:39,725 INFO L272 TraceCheckUtils]: 11: Hoare triple {24763#(< ~counter~0 14)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24416#true} is VALID [2022-04-15 08:54:39,726 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24416#true} {24763#(< ~counter~0 14)} #94#return; {24763#(< ~counter~0 14)} is VALID [2022-04-15 08:54:39,726 INFO L290 TraceCheckUtils]: 9: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-15 08:54:39,726 INFO L290 TraceCheckUtils]: 8: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-15 08:54:39,726 INFO L290 TraceCheckUtils]: 7: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-15 08:54:39,726 INFO L272 TraceCheckUtils]: 6: Hoare triple {24763#(< ~counter~0 14)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24416#true} is VALID [2022-04-15 08:54:39,726 INFO L290 TraceCheckUtils]: 5: Hoare triple {24763#(< ~counter~0 14)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24763#(< ~counter~0 14)} is VALID [2022-04-15 08:54:39,727 INFO L272 TraceCheckUtils]: 4: Hoare triple {24763#(< ~counter~0 14)} call #t~ret9 := main(); {24763#(< ~counter~0 14)} is VALID [2022-04-15 08:54:39,727 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24763#(< ~counter~0 14)} {24416#true} #108#return; {24763#(< ~counter~0 14)} is VALID [2022-04-15 08:54:39,727 INFO L290 TraceCheckUtils]: 2: Hoare triple {24763#(< ~counter~0 14)} assume true; {24763#(< ~counter~0 14)} is VALID [2022-04-15 08:54:39,727 INFO L290 TraceCheckUtils]: 1: Hoare triple {24416#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);~counter~0 := 0; {24763#(< ~counter~0 14)} is VALID [2022-04-15 08:54:39,728 INFO L272 TraceCheckUtils]: 0: Hoare triple {24416#true} call ULTIMATE.init(); {24416#true} is VALID [2022-04-15 08:54:39,728 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:54:39,728 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:39,728 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [427805763] [2022-04-15 08:54:39,728 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:39,728 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1662179046] [2022-04-15 08:54:39,728 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1662179046] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:54:39,728 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:54:39,728 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-15 08:54:39,729 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:39,729 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [432378001] [2022-04-15 08:54:39,729 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [432378001] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:39,729 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:39,729 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 08:54:39,729 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1301168990] [2022-04-15 08:54:39,729 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:39,730 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 64 [2022-04-15 08:54:39,730 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:39,730 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:39,766 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-15 08:54:39,766 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 08:54:39,766 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:39,766 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 08:54:39,766 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-15 08:54:39,767 INFO L87 Difference]: Start difference. First operand 426 states and 598 transitions. Second operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:41,229 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:41,229 INFO L93 Difference]: Finished difference Result 531 states and 722 transitions. [2022-04-15 08:54:41,229 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-15 08:54:41,229 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 64 [2022-04-15 08:54:41,229 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:41,230 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:41,231 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 162 transitions. [2022-04-15 08:54:41,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:41,232 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 162 transitions. [2022-04-15 08:54:41,233 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 162 transitions. [2022-04-15 08:54:41,344 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:41,357 INFO L225 Difference]: With dead ends: 531 [2022-04-15 08:54:41,357 INFO L226 Difference]: Without dead ends: 524 [2022-04-15 08:54:41,358 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=188, Invalid=274, Unknown=0, NotChecked=0, Total=462 [2022-04-15 08:54:41,358 INFO L913 BasicCegarLoop]: 61 mSDtfsCounter, 84 mSDsluCounter, 264 mSDsCounter, 0 mSdLazyCounter, 147 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 325 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 147 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:41,359 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [84 Valid, 325 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 147 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:54:41,359 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 524 states. [2022-04-15 08:54:42,261 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 524 to 503. [2022-04-15 08:54:42,261 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:42,262 INFO L82 GeneralOperation]: Start isEquivalent. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:54:42,262 INFO L74 IsIncluded]: Start isIncluded. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:54:42,263 INFO L87 Difference]: Start difference. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:54:42,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:42,275 INFO L93 Difference]: Finished difference Result 524 states and 713 transitions. [2022-04-15 08:54:42,275 INFO L276 IsEmpty]: Start isEmpty. Operand 524 states and 713 transitions. [2022-04-15 08:54:42,277 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:42,277 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:42,277 INFO L74 IsIncluded]: Start isIncluded. First operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 524 states. [2022-04-15 08:54:42,278 INFO L87 Difference]: Start difference. First operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 524 states. [2022-04-15 08:54:42,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:42,289 INFO L93 Difference]: Finished difference Result 524 states and 713 transitions. [2022-04-15 08:54:42,290 INFO L276 IsEmpty]: Start isEmpty. Operand 524 states and 713 transitions. [2022-04-15 08:54:42,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:42,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:42,291 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:42,291 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:42,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:54:42,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 503 states to 503 states and 691 transitions. [2022-04-15 08:54:42,306 INFO L78 Accepts]: Start accepts. Automaton has 503 states and 691 transitions. Word has length 64 [2022-04-15 08:54:42,306 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:42,306 INFO L478 AbstractCegarLoop]: Abstraction has 503 states and 691 transitions. [2022-04-15 08:54:42,306 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:42,306 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 503 states and 691 transitions. [2022-04-15 08:54:43,134 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 691 edges. 691 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:43,134 INFO L276 IsEmpty]: Start isEmpty. Operand 503 states and 691 transitions. [2022-04-15 08:54:43,135 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-15 08:54:43,135 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:43,135 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 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] [2022-04-15 08:54:43,151 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-15 08:54:43,346 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-15 08:54:43,346 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:43,348 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:43,348 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 1 times [2022-04-15 08:54:43,348 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:43,348 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [465063483] [2022-04-15 08:54:43,348 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:43,348 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 2 times [2022-04-15 08:54:43,348 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:43,348 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2078194761] [2022-04-15 08:54:43,348 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:43,349 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:43,357 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:43,357 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1885836722] [2022-04-15 08:54:43,357 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:54:43,357 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:43,358 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:43,358 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-15 08:54:43,359 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-15 08:54:43,401 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:54:43,401 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:43,402 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-15 08:54:43,413 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:43,414 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:43,711 INFO L272 TraceCheckUtils]: 0: Hoare triple {27941#true} call ULTIMATE.init(); {27941#true} is VALID [2022-04-15 08:54:43,711 INFO L290 TraceCheckUtils]: 1: Hoare triple {27941#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);~counter~0 := 0; {27941#true} is VALID [2022-04-15 08:54:43,711 INFO L290 TraceCheckUtils]: 2: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,711 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27941#true} {27941#true} #108#return; {27941#true} is VALID [2022-04-15 08:54:43,711 INFO L272 TraceCheckUtils]: 4: Hoare triple {27941#true} call #t~ret9 := main(); {27941#true} is VALID [2022-04-15 08:54:43,711 INFO L290 TraceCheckUtils]: 5: Hoare triple {27941#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {27941#true} is VALID [2022-04-15 08:54:43,711 INFO L272 TraceCheckUtils]: 6: Hoare triple {27941#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,712 INFO L290 TraceCheckUtils]: 7: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,712 INFO L290 TraceCheckUtils]: 8: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,712 INFO L290 TraceCheckUtils]: 9: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,712 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27941#true} {27941#true} #94#return; {27941#true} is VALID [2022-04-15 08:54:43,712 INFO L272 TraceCheckUtils]: 11: Hoare triple {27941#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,712 INFO L290 TraceCheckUtils]: 12: Hoare triple {27941#true} ~cond := #in~cond; {27982#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 08:54:43,712 INFO L290 TraceCheckUtils]: 13: Hoare triple {27982#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {27986#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:54:43,713 INFO L290 TraceCheckUtils]: 14: Hoare triple {27986#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {27986#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 08:54:43,713 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27986#(not (= |assume_abort_if_not_#in~cond| 0))} {27941#true} #96#return; {27993#(<= 1 main_~y~0)} is VALID [2022-04-15 08:54:43,714 INFO L290 TraceCheckUtils]: 16: Hoare triple {27993#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27997#(<= 1 main_~b~0)} is VALID [2022-04-15 08:54:43,714 INFO L290 TraceCheckUtils]: 17: Hoare triple {27997#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27997#(<= 1 main_~b~0)} is VALID [2022-04-15 08:54:43,714 INFO L290 TraceCheckUtils]: 18: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {27997#(<= 1 main_~b~0)} is VALID [2022-04-15 08:54:43,714 INFO L290 TraceCheckUtils]: 19: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27997#(<= 1 main_~b~0)} is VALID [2022-04-15 08:54:43,715 INFO L290 TraceCheckUtils]: 20: Hoare triple {27997#(<= 1 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27997#(<= 1 main_~b~0)} is VALID [2022-04-15 08:54:43,715 INFO L290 TraceCheckUtils]: 21: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(#t~post7 < 20);havoc #t~post7; {27997#(<= 1 main_~b~0)} is VALID [2022-04-15 08:54:43,715 INFO L290 TraceCheckUtils]: 22: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,716 INFO L290 TraceCheckUtils]: 23: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,716 INFO L290 TraceCheckUtils]: 24: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(#t~post8 < 20);havoc #t~post8; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,716 INFO L272 TraceCheckUtils]: 25: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,716 INFO L290 TraceCheckUtils]: 26: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,716 INFO L290 TraceCheckUtils]: 27: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,716 INFO L290 TraceCheckUtils]: 28: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,717 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #98#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,717 INFO L272 TraceCheckUtils]: 30: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,717 INFO L290 TraceCheckUtils]: 31: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,717 INFO L290 TraceCheckUtils]: 32: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,717 INFO L290 TraceCheckUtils]: 33: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,718 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #100#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,718 INFO L272 TraceCheckUtils]: 35: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,718 INFO L290 TraceCheckUtils]: 36: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,718 INFO L290 TraceCheckUtils]: 37: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,718 INFO L290 TraceCheckUtils]: 38: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,719 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #102#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,719 INFO L272 TraceCheckUtils]: 40: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,719 INFO L290 TraceCheckUtils]: 41: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,719 INFO L290 TraceCheckUtils]: 42: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,719 INFO L290 TraceCheckUtils]: 43: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,719 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #104#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,720 INFO L290 TraceCheckUtils]: 45: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,720 INFO L290 TraceCheckUtils]: 46: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,721 INFO L290 TraceCheckUtils]: 47: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !!(#t~post8 < 20);havoc #t~post8; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,721 INFO L272 TraceCheckUtils]: 48: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,721 INFO L290 TraceCheckUtils]: 49: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,721 INFO L290 TraceCheckUtils]: 50: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,721 INFO L290 TraceCheckUtils]: 51: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,722 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #98#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,722 INFO L272 TraceCheckUtils]: 53: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,722 INFO L290 TraceCheckUtils]: 54: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,722 INFO L290 TraceCheckUtils]: 55: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,722 INFO L290 TraceCheckUtils]: 56: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,722 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #100#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,722 INFO L272 TraceCheckUtils]: 58: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,723 INFO L290 TraceCheckUtils]: 59: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,723 INFO L290 TraceCheckUtils]: 60: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,723 INFO L290 TraceCheckUtils]: 61: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,723 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #102#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-15 08:54:43,724 INFO L272 TraceCheckUtils]: 63: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:54:43,724 INFO L290 TraceCheckUtils]: 64: Hoare triple {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:54:43,724 INFO L290 TraceCheckUtils]: 65: Hoare triple {28145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27942#false} is VALID [2022-04-15 08:54:43,724 INFO L290 TraceCheckUtils]: 66: Hoare triple {27942#false} assume !false; {27942#false} is VALID [2022-04-15 08:54:43,725 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 17 proven. 6 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-15 08:54:43,725 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:54:43,965 INFO L290 TraceCheckUtils]: 66: Hoare triple {27942#false} assume !false; {27942#false} is VALID [2022-04-15 08:54:43,966 INFO L290 TraceCheckUtils]: 65: Hoare triple {28145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27942#false} is VALID [2022-04-15 08:54:43,966 INFO L290 TraceCheckUtils]: 64: Hoare triple {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:54:43,967 INFO L272 TraceCheckUtils]: 63: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:54:43,967 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,967 INFO L290 TraceCheckUtils]: 61: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,967 INFO L290 TraceCheckUtils]: 60: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,968 INFO L290 TraceCheckUtils]: 59: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,968 INFO L272 TraceCheckUtils]: 58: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-15 08:54:43,968 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,968 INFO L290 TraceCheckUtils]: 56: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,968 INFO L290 TraceCheckUtils]: 55: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,968 INFO L290 TraceCheckUtils]: 54: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,968 INFO L272 TraceCheckUtils]: 53: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-15 08:54:43,969 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,969 INFO L290 TraceCheckUtils]: 51: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,969 INFO L290 TraceCheckUtils]: 50: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,969 INFO L290 TraceCheckUtils]: 49: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,969 INFO L272 TraceCheckUtils]: 48: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-15 08:54:43,970 INFO L290 TraceCheckUtils]: 47: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 20);havoc #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,970 INFO L290 TraceCheckUtils]: 46: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,972 INFO L290 TraceCheckUtils]: 45: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,972 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,973 INFO L290 TraceCheckUtils]: 43: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,973 INFO L290 TraceCheckUtils]: 42: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,973 INFO L290 TraceCheckUtils]: 41: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,973 INFO L272 TraceCheckUtils]: 40: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,973 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,973 INFO L290 TraceCheckUtils]: 38: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,973 INFO L290 TraceCheckUtils]: 37: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,973 INFO L290 TraceCheckUtils]: 36: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,974 INFO L272 TraceCheckUtils]: 35: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-15 08:54:43,974 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,974 INFO L290 TraceCheckUtils]: 33: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,974 INFO L290 TraceCheckUtils]: 32: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,974 INFO L290 TraceCheckUtils]: 31: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,974 INFO L272 TraceCheckUtils]: 30: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-15 08:54:43,975 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,975 INFO L290 TraceCheckUtils]: 28: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,975 INFO L290 TraceCheckUtils]: 27: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,975 INFO L290 TraceCheckUtils]: 26: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,975 INFO L272 TraceCheckUtils]: 25: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-15 08:54:43,975 INFO L290 TraceCheckUtils]: 24: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 20);havoc #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,976 INFO L290 TraceCheckUtils]: 23: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,976 INFO L290 TraceCheckUtils]: 22: Hoare triple {27941#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-15 08:54:43,976 INFO L290 TraceCheckUtils]: 21: Hoare triple {27941#true} assume !!(#t~post7 < 20);havoc #t~post7; {27941#true} is VALID [2022-04-15 08:54:43,976 INFO L290 TraceCheckUtils]: 20: Hoare triple {27941#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27941#true} is VALID [2022-04-15 08:54:43,976 INFO L290 TraceCheckUtils]: 19: Hoare triple {27941#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27941#true} is VALID [2022-04-15 08:54:43,976 INFO L290 TraceCheckUtils]: 18: Hoare triple {27941#true} assume !!(#t~post6 < 20);havoc #t~post6; {27941#true} is VALID [2022-04-15 08:54:43,976 INFO L290 TraceCheckUtils]: 17: Hoare triple {27941#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L290 TraceCheckUtils]: 16: Hoare triple {27941#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27941#true} {27941#true} #96#return; {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L290 TraceCheckUtils]: 14: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L290 TraceCheckUtils]: 13: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L290 TraceCheckUtils]: 12: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L272 TraceCheckUtils]: 11: Hoare triple {27941#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27941#true} {27941#true} #94#return; {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L290 TraceCheckUtils]: 9: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L290 TraceCheckUtils]: 8: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L290 TraceCheckUtils]: 7: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L272 TraceCheckUtils]: 6: Hoare triple {27941#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L290 TraceCheckUtils]: 5: Hoare triple {27941#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L272 TraceCheckUtils]: 4: Hoare triple {27941#true} call #t~ret9 := main(); {27941#true} is VALID [2022-04-15 08:54:43,977 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27941#true} {27941#true} #108#return; {27941#true} is VALID [2022-04-15 08:54:43,978 INFO L290 TraceCheckUtils]: 2: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-15 08:54:43,978 INFO L290 TraceCheckUtils]: 1: Hoare triple {27941#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);~counter~0 := 0; {27941#true} is VALID [2022-04-15 08:54:43,978 INFO L272 TraceCheckUtils]: 0: Hoare triple {27941#true} call ULTIMATE.init(); {27941#true} is VALID [2022-04-15 08:54:43,978 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 94 trivial. 0 not checked. [2022-04-15 08:54:43,978 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:43,978 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2078194761] [2022-04-15 08:54:43,978 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:43,978 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1885836722] [2022-04-15 08:54:43,978 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1885836722] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 08:54:43,978 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 08:54:43,978 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-15 08:54:43,979 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:43,979 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [465063483] [2022-04-15 08:54:43,979 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [465063483] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:43,979 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:43,979 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:54:43,979 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [514044596] [2022-04-15 08:54:43,979 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:43,979 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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 67 [2022-04-15 08:54:43,979 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:43,980 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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-15 08:54:44,006 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-15 08:54:44,006 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:54:44,006 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:44,007 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:54:44,007 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-15 08:54:44,007 INFO L87 Difference]: Start difference. First operand 503 states and 691 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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-15 08:54:45,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:45,082 INFO L93 Difference]: Finished difference Result 517 states and 704 transitions. [2022-04-15 08:54:45,082 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 08:54:45,083 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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 67 [2022-04-15 08:54:45,083 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:45,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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-15 08:54:45,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-15 08:54:45,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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-15 08:54:45,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-15 08:54:45,084 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-15 08:54:45,133 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:45,146 INFO L225 Difference]: With dead ends: 517 [2022-04-15 08:54:45,146 INFO L226 Difference]: Without dead ends: 515 [2022-04-15 08:54:45,146 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 122 SyntacticMatches, 2 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-15 08:54:45,147 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 12 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:45,147 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 144 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 08:54:45,147 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 515 states. [2022-04-15 08:54:46,066 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 515 to 511. [2022-04-15 08:54:46,066 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:46,067 INFO L82 GeneralOperation]: Start isEquivalent. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:54:46,068 INFO L74 IsIncluded]: Start isIncluded. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:54:46,068 INFO L87 Difference]: Start difference. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:54:46,080 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:46,080 INFO L93 Difference]: Finished difference Result 515 states and 699 transitions. [2022-04-15 08:54:46,081 INFO L276 IsEmpty]: Start isEmpty. Operand 515 states and 699 transitions. [2022-04-15 08:54:46,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:46,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:46,082 INFO L74 IsIncluded]: Start isIncluded. First operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 515 states. [2022-04-15 08:54:46,083 INFO L87 Difference]: Start difference. First operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 515 states. [2022-04-15 08:54:46,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:46,093 INFO L93 Difference]: Finished difference Result 515 states and 699 transitions. [2022-04-15 08:54:46,093 INFO L276 IsEmpty]: Start isEmpty. Operand 515 states and 699 transitions. [2022-04-15 08:54:46,094 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:46,095 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:46,095 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:46,095 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:46,095 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:54:46,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 511 states to 511 states and 695 transitions. [2022-04-15 08:54:46,109 INFO L78 Accepts]: Start accepts. Automaton has 511 states and 695 transitions. Word has length 67 [2022-04-15 08:54:46,109 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:46,109 INFO L478 AbstractCegarLoop]: Abstraction has 511 states and 695 transitions. [2022-04-15 08:54:46,109 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 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-15 08:54:46,109 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 511 states and 695 transitions. [2022-04-15 08:54:46,982 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 695 edges. 695 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:46,983 INFO L276 IsEmpty]: Start isEmpty. Operand 511 states and 695 transitions. [2022-04-15 08:54:46,983 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-15 08:54:46,983 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:46,983 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:54:47,002 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-15 08:54:47,200 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-15 08:54:47,200 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:47,200 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:47,200 INFO L85 PathProgramCache]: Analyzing trace with hash 1261753774, now seen corresponding path program 3 times [2022-04-15 08:54:47,200 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:47,200 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [842822001] [2022-04-15 08:54:47,201 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:47,201 INFO L85 PathProgramCache]: Analyzing trace with hash 1261753774, now seen corresponding path program 4 times [2022-04-15 08:54:47,201 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:47,201 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [995922525] [2022-04-15 08:54:47,201 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:47,201 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:47,211 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:47,211 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1108033245] [2022-04-15 08:54:47,211 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:54:47,212 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:47,212 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:47,212 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-15 08:54:47,213 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-15 08:54:47,253 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:54:47,253 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:47,254 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-15 08:54:47,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:47,265 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:47,461 INFO L272 TraceCheckUtils]: 0: Hoare triple {31441#true} call ULTIMATE.init(); {31441#true} is VALID [2022-04-15 08:54:47,462 INFO L290 TraceCheckUtils]: 1: Hoare triple {31441#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);~counter~0 := 0; {31441#true} is VALID [2022-04-15 08:54:47,462 INFO L290 TraceCheckUtils]: 2: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,462 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31441#true} {31441#true} #108#return; {31441#true} is VALID [2022-04-15 08:54:47,462 INFO L272 TraceCheckUtils]: 4: Hoare triple {31441#true} call #t~ret9 := main(); {31441#true} is VALID [2022-04-15 08:54:47,462 INFO L290 TraceCheckUtils]: 5: Hoare triple {31441#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {31441#true} is VALID [2022-04-15 08:54:47,462 INFO L272 TraceCheckUtils]: 6: Hoare triple {31441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,462 INFO L290 TraceCheckUtils]: 7: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,462 INFO L290 TraceCheckUtils]: 8: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,462 INFO L290 TraceCheckUtils]: 9: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,462 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31441#true} {31441#true} #94#return; {31441#true} is VALID [2022-04-15 08:54:47,462 INFO L272 TraceCheckUtils]: 11: Hoare triple {31441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,463 INFO L290 TraceCheckUtils]: 12: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,463 INFO L290 TraceCheckUtils]: 13: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,463 INFO L290 TraceCheckUtils]: 14: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,463 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {31441#true} {31441#true} #96#return; {31441#true} is VALID [2022-04-15 08:54:47,463 INFO L290 TraceCheckUtils]: 16: Hoare triple {31441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {31441#true} is VALID [2022-04-15 08:54:47,463 INFO L290 TraceCheckUtils]: 17: Hoare triple {31441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31441#true} is VALID [2022-04-15 08:54:47,463 INFO L290 TraceCheckUtils]: 18: Hoare triple {31441#true} assume !!(#t~post6 < 20);havoc #t~post6; {31441#true} is VALID [2022-04-15 08:54:47,463 INFO L290 TraceCheckUtils]: 19: Hoare triple {31441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31441#true} is VALID [2022-04-15 08:54:47,463 INFO L290 TraceCheckUtils]: 20: Hoare triple {31441#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31441#true} is VALID [2022-04-15 08:54:47,463 INFO L290 TraceCheckUtils]: 21: Hoare triple {31441#true} assume !!(#t~post7 < 20);havoc #t~post7; {31441#true} is VALID [2022-04-15 08:54:47,471 INFO L290 TraceCheckUtils]: 22: Hoare triple {31441#true} assume !(~c~0 >= ~b~0); {31512#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-15 08:54:47,472 INFO L290 TraceCheckUtils]: 23: Hoare triple {31512#(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; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 08:54:47,472 INFO L290 TraceCheckUtils]: 24: Hoare triple {31516#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 08:54:47,472 INFO L290 TraceCheckUtils]: 25: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 08:54:47,473 INFO L290 TraceCheckUtils]: 26: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 08:54:47,473 INFO L290 TraceCheckUtils]: 27: Hoare triple {31526#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 08:54:47,473 INFO L290 TraceCheckUtils]: 28: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 08:54:47,473 INFO L290 TraceCheckUtils]: 29: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,474 INFO L290 TraceCheckUtils]: 30: Hoare triple {31536#(< main_~v~0 main_~c~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,474 INFO L290 TraceCheckUtils]: 31: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !!(#t~post8 < 20);havoc #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,474 INFO L272 TraceCheckUtils]: 32: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,474 INFO L290 TraceCheckUtils]: 33: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,474 INFO L290 TraceCheckUtils]: 34: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,474 INFO L290 TraceCheckUtils]: 35: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,475 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #98#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,475 INFO L272 TraceCheckUtils]: 37: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,475 INFO L290 TraceCheckUtils]: 38: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,475 INFO L290 TraceCheckUtils]: 39: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,475 INFO L290 TraceCheckUtils]: 40: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,476 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #100#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,476 INFO L272 TraceCheckUtils]: 42: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,476 INFO L290 TraceCheckUtils]: 43: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,476 INFO L290 TraceCheckUtils]: 44: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,476 INFO L290 TraceCheckUtils]: 45: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,477 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #102#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,477 INFO L272 TraceCheckUtils]: 47: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,477 INFO L290 TraceCheckUtils]: 48: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,477 INFO L290 TraceCheckUtils]: 49: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,477 INFO L290 TraceCheckUtils]: 50: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,477 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #104#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,478 INFO L290 TraceCheckUtils]: 52: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,478 INFO L290 TraceCheckUtils]: 53: Hoare triple {31536#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {31609#(< 0 main_~c~0)} is VALID [2022-04-15 08:54:47,478 INFO L290 TraceCheckUtils]: 54: Hoare triple {31609#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-15 08:54:47,479 INFO L290 TraceCheckUtils]: 55: Hoare triple {31609#(< 0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-15 08:54:47,479 INFO L290 TraceCheckUtils]: 56: Hoare triple {31609#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {31609#(< 0 main_~c~0)} is VALID [2022-04-15 08:54:47,479 INFO L290 TraceCheckUtils]: 57: Hoare triple {31609#(< 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; {31622#(< 0 main_~b~0)} is VALID [2022-04-15 08:54:47,480 INFO L290 TraceCheckUtils]: 58: Hoare triple {31622#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-15 08:54:47,480 INFO L290 TraceCheckUtils]: 59: Hoare triple {31622#(< 0 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-15 08:54:47,480 INFO L290 TraceCheckUtils]: 60: Hoare triple {31622#(< 0 main_~b~0)} assume !(0 != ~b~0); {31442#false} is VALID [2022-04-15 08:54:47,480 INFO L272 TraceCheckUtils]: 61: Hoare triple {31442#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)); {31442#false} is VALID [2022-04-15 08:54:47,480 INFO L290 TraceCheckUtils]: 62: Hoare triple {31442#false} ~cond := #in~cond; {31442#false} is VALID [2022-04-15 08:54:47,480 INFO L290 TraceCheckUtils]: 63: Hoare triple {31442#false} assume 0 == ~cond; {31442#false} is VALID [2022-04-15 08:54:47,480 INFO L290 TraceCheckUtils]: 64: Hoare triple {31442#false} assume !false; {31442#false} is VALID [2022-04-15 08:54:47,481 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:54:47,481 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:54:47,672 INFO L290 TraceCheckUtils]: 64: Hoare triple {31442#false} assume !false; {31442#false} is VALID [2022-04-15 08:54:47,672 INFO L290 TraceCheckUtils]: 63: Hoare triple {31442#false} assume 0 == ~cond; {31442#false} is VALID [2022-04-15 08:54:47,672 INFO L290 TraceCheckUtils]: 62: Hoare triple {31442#false} ~cond := #in~cond; {31442#false} is VALID [2022-04-15 08:54:47,672 INFO L272 TraceCheckUtils]: 61: Hoare triple {31442#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)); {31442#false} is VALID [2022-04-15 08:54:47,672 INFO L290 TraceCheckUtils]: 60: Hoare triple {31622#(< 0 main_~b~0)} assume !(0 != ~b~0); {31442#false} is VALID [2022-04-15 08:54:47,673 INFO L290 TraceCheckUtils]: 59: Hoare triple {31622#(< 0 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-15 08:54:47,673 INFO L290 TraceCheckUtils]: 58: Hoare triple {31622#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-15 08:54:47,673 INFO L290 TraceCheckUtils]: 57: Hoare triple {31609#(< 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; {31622#(< 0 main_~b~0)} is VALID [2022-04-15 08:54:47,674 INFO L290 TraceCheckUtils]: 56: Hoare triple {31609#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {31609#(< 0 main_~c~0)} is VALID [2022-04-15 08:54:47,674 INFO L290 TraceCheckUtils]: 55: Hoare triple {31609#(< 0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-15 08:54:47,674 INFO L290 TraceCheckUtils]: 54: Hoare triple {31609#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-15 08:54:47,675 INFO L290 TraceCheckUtils]: 53: Hoare triple {31536#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {31609#(< 0 main_~c~0)} is VALID [2022-04-15 08:54:47,675 INFO L290 TraceCheckUtils]: 52: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,675 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #104#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,676 INFO L290 TraceCheckUtils]: 50: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,676 INFO L290 TraceCheckUtils]: 49: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,676 INFO L290 TraceCheckUtils]: 48: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,676 INFO L272 TraceCheckUtils]: 47: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,676 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #102#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,676 INFO L290 TraceCheckUtils]: 45: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,676 INFO L290 TraceCheckUtils]: 44: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,676 INFO L290 TraceCheckUtils]: 43: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,676 INFO L272 TraceCheckUtils]: 42: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,677 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #100#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,677 INFO L290 TraceCheckUtils]: 40: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,677 INFO L290 TraceCheckUtils]: 39: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,677 INFO L290 TraceCheckUtils]: 38: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,677 INFO L272 TraceCheckUtils]: 37: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,678 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #98#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,678 INFO L290 TraceCheckUtils]: 35: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,678 INFO L290 TraceCheckUtils]: 34: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,678 INFO L290 TraceCheckUtils]: 33: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,678 INFO L272 TraceCheckUtils]: 32: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,680 INFO L290 TraceCheckUtils]: 31: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !!(#t~post8 < 20);havoc #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,680 INFO L290 TraceCheckUtils]: 30: Hoare triple {31536#(< main_~v~0 main_~c~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,680 INFO L290 TraceCheckUtils]: 29: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-15 08:54:47,681 INFO L290 TraceCheckUtils]: 28: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 20);havoc #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 08:54:47,681 INFO L290 TraceCheckUtils]: 27: Hoare triple {31526#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 08:54:47,681 INFO L290 TraceCheckUtils]: 26: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-15 08:54:47,681 INFO L290 TraceCheckUtils]: 25: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 20);havoc #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 08:54:47,682 INFO L290 TraceCheckUtils]: 24: Hoare triple {31516#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 08:54:47,682 INFO L290 TraceCheckUtils]: 23: Hoare triple {31512#(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; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-15 08:54:47,682 INFO L290 TraceCheckUtils]: 22: Hoare triple {31441#true} assume !(~c~0 >= ~b~0); {31512#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-15 08:54:47,682 INFO L290 TraceCheckUtils]: 21: Hoare triple {31441#true} assume !!(#t~post7 < 20);havoc #t~post7; {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L290 TraceCheckUtils]: 20: Hoare triple {31441#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L290 TraceCheckUtils]: 19: Hoare triple {31441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L290 TraceCheckUtils]: 18: Hoare triple {31441#true} assume !!(#t~post6 < 20);havoc #t~post6; {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L290 TraceCheckUtils]: 17: Hoare triple {31441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L290 TraceCheckUtils]: 16: Hoare triple {31441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {31441#true} {31441#true} #96#return; {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L290 TraceCheckUtils]: 14: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L290 TraceCheckUtils]: 13: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L290 TraceCheckUtils]: 12: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L272 TraceCheckUtils]: 11: Hoare triple {31441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31441#true} {31441#true} #94#return; {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L290 TraceCheckUtils]: 9: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L290 TraceCheckUtils]: 8: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-15 08:54:47,683 INFO L290 TraceCheckUtils]: 7: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-15 08:54:47,684 INFO L272 TraceCheckUtils]: 6: Hoare triple {31441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-15 08:54:47,684 INFO L290 TraceCheckUtils]: 5: Hoare triple {31441#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {31441#true} is VALID [2022-04-15 08:54:47,684 INFO L272 TraceCheckUtils]: 4: Hoare triple {31441#true} call #t~ret9 := main(); {31441#true} is VALID [2022-04-15 08:54:47,684 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31441#true} {31441#true} #108#return; {31441#true} is VALID [2022-04-15 08:54:47,684 INFO L290 TraceCheckUtils]: 2: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-15 08:54:47,684 INFO L290 TraceCheckUtils]: 1: Hoare triple {31441#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);~counter~0 := 0; {31441#true} is VALID [2022-04-15 08:54:47,684 INFO L272 TraceCheckUtils]: 0: Hoare triple {31441#true} call ULTIMATE.init(); {31441#true} is VALID [2022-04-15 08:54:47,684 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:54:47,684 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:47,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [995922525] [2022-04-15 08:54:47,684 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:47,685 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1108033245] [2022-04-15 08:54:47,685 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1108033245] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:54:47,685 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:54:47,685 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-15 08:54:47,685 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:47,685 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [842822001] [2022-04-15 08:54:47,685 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [842822001] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:47,685 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:47,685 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 08:54:47,685 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1825425556] [2022-04-15 08:54:47,685 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:47,686 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 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 65 [2022-04-15 08:54:47,686 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:47,686 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 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-15 08:54:47,729 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-15 08:54:47,730 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 08:54:47,730 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:47,730 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 08:54:47,730 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-15 08:54:47,730 INFO L87 Difference]: Start difference. First operand 511 states and 695 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 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-15 08:54:51,027 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:51,027 INFO L93 Difference]: Finished difference Result 857 states and 1271 transitions. [2022-04-15 08:54:51,027 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-15 08:54:51,027 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 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 65 [2022-04-15 08:54:51,027 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:51,027 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 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-15 08:54:51,029 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 227 transitions. [2022-04-15 08:54:51,029 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 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-15 08:54:51,031 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 227 transitions. [2022-04-15 08:54:51,031 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 227 transitions. [2022-04-15 08:54:51,208 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 227 edges. 227 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:51,240 INFO L225 Difference]: With dead ends: 857 [2022-04-15 08:54:51,241 INFO L226 Difference]: Without dead ends: 850 [2022-04-15 08:54:51,241 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 127 SyntacticMatches, 2 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 65 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=107, Invalid=313, Unknown=0, NotChecked=0, Total=420 [2022-04-15 08:54:51,242 INFO L913 BasicCegarLoop]: 120 mSDtfsCounter, 81 mSDsluCounter, 334 mSDsCounter, 0 mSdLazyCounter, 401 mSolverCounterSat, 91 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 85 SdHoareTripleChecker+Valid, 454 SdHoareTripleChecker+Invalid, 492 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 91 IncrementalHoareTripleChecker+Valid, 401 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:51,242 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [85 Valid, 454 Invalid, 492 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [91 Valid, 401 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-15 08:54:51,242 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 850 states. [2022-04-15 08:54:52,362 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 850 to 567. [2022-04-15 08:54:52,362 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:52,368 INFO L82 GeneralOperation]: Start isEquivalent. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-15 08:54:52,368 INFO L74 IsIncluded]: Start isIncluded. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-15 08:54:52,369 INFO L87 Difference]: Start difference. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-15 08:54:52,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:52,399 INFO L93 Difference]: Finished difference Result 850 states and 1261 transitions. [2022-04-15 08:54:52,400 INFO L276 IsEmpty]: Start isEmpty. Operand 850 states and 1261 transitions. [2022-04-15 08:54:52,402 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:52,402 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:52,402 INFO L74 IsIncluded]: Start isIncluded. First operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 850 states. [2022-04-15 08:54:52,403 INFO L87 Difference]: Start difference. First operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 850 states. [2022-04-15 08:54:52,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:52,434 INFO L93 Difference]: Finished difference Result 850 states and 1261 transitions. [2022-04-15 08:54:52,434 INFO L276 IsEmpty]: Start isEmpty. Operand 850 states and 1261 transitions. [2022-04-15 08:54:52,436 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:52,436 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:52,437 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:52,437 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:52,437 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-15 08:54:52,453 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 567 states to 567 states and 783 transitions. [2022-04-15 08:54:52,454 INFO L78 Accepts]: Start accepts. Automaton has 567 states and 783 transitions. Word has length 65 [2022-04-15 08:54:52,454 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:52,454 INFO L478 AbstractCegarLoop]: Abstraction has 567 states and 783 transitions. [2022-04-15 08:54:52,454 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 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-15 08:54:52,454 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 567 states and 783 transitions. [2022-04-15 08:54:53,603 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 783 edges. 783 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:53,603 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 783 transitions. [2022-04-15 08:54:53,604 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-15 08:54:53,604 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:53,604 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:54:53,620 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-15 08:54:53,804 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-15 08:54:53,804 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:53,805 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:53,805 INFO L85 PathProgramCache]: Analyzing trace with hash 365174246, now seen corresponding path program 1 times [2022-04-15 08:54:53,805 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:53,805 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1217829617] [2022-04-15 08:54:53,805 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:53,805 INFO L85 PathProgramCache]: Analyzing trace with hash 365174246, now seen corresponding path program 2 times [2022-04-15 08:54:53,805 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:53,805 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [279045842] [2022-04-15 08:54:53,805 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:53,806 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:53,816 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:53,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [632406077] [2022-04-15 08:54:53,816 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:54:53,816 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:53,816 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:53,817 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-15 08:54:53,818 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-15 08:54:53,860 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:54:53,861 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:53,862 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 08:54:53,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:53,888 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:54,154 INFO L272 TraceCheckUtils]: 0: Hoare triple {36418#true} call ULTIMATE.init(); {36418#true} is VALID [2022-04-15 08:54:54,155 INFO L290 TraceCheckUtils]: 1: Hoare triple {36418#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);~counter~0 := 0; {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,155 INFO L290 TraceCheckUtils]: 2: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,155 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36426#(<= ~counter~0 0)} {36418#true} #108#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,156 INFO L272 TraceCheckUtils]: 4: Hoare triple {36426#(<= ~counter~0 0)} call #t~ret9 := main(); {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,156 INFO L290 TraceCheckUtils]: 5: Hoare triple {36426#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,156 INFO L272 TraceCheckUtils]: 6: Hoare triple {36426#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,156 INFO L290 TraceCheckUtils]: 7: Hoare triple {36426#(<= ~counter~0 0)} ~cond := #in~cond; {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,157 INFO L290 TraceCheckUtils]: 8: Hoare triple {36426#(<= ~counter~0 0)} assume !(0 == ~cond); {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,157 INFO L290 TraceCheckUtils]: 9: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,157 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36426#(<= ~counter~0 0)} {36426#(<= ~counter~0 0)} #94#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,158 INFO L272 TraceCheckUtils]: 11: Hoare triple {36426#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,158 INFO L290 TraceCheckUtils]: 12: Hoare triple {36426#(<= ~counter~0 0)} ~cond := #in~cond; {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,158 INFO L290 TraceCheckUtils]: 13: Hoare triple {36426#(<= ~counter~0 0)} assume !(0 == ~cond); {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,158 INFO L290 TraceCheckUtils]: 14: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,159 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {36426#(<= ~counter~0 0)} {36426#(<= ~counter~0 0)} #96#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,159 INFO L290 TraceCheckUtils]: 16: Hoare triple {36426#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {36426#(<= ~counter~0 0)} is VALID [2022-04-15 08:54:54,160 INFO L290 TraceCheckUtils]: 17: Hoare triple {36426#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36475#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:54,160 INFO L290 TraceCheckUtils]: 18: Hoare triple {36475#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {36475#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:54,161 INFO L290 TraceCheckUtils]: 19: Hoare triple {36475#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36475#(<= ~counter~0 1)} is VALID [2022-04-15 08:54:54,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {36475#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36485#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:54,161 INFO L290 TraceCheckUtils]: 21: Hoare triple {36485#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {36485#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:54,162 INFO L290 TraceCheckUtils]: 22: Hoare triple {36485#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {36485#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:54,162 INFO L290 TraceCheckUtils]: 23: Hoare triple {36485#(<= ~counter~0 2)} ~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; {36485#(<= ~counter~0 2)} is VALID [2022-04-15 08:54:54,163 INFO L290 TraceCheckUtils]: 24: Hoare triple {36485#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36498#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:54,163 INFO L290 TraceCheckUtils]: 25: Hoare triple {36498#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {36498#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:54,163 INFO L290 TraceCheckUtils]: 26: Hoare triple {36498#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36498#(<= ~counter~0 3)} is VALID [2022-04-15 08:54:54,164 INFO L290 TraceCheckUtils]: 27: Hoare triple {36498#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36508#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:54,164 INFO L290 TraceCheckUtils]: 28: Hoare triple {36508#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {36508#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:54,164 INFO L290 TraceCheckUtils]: 29: Hoare triple {36508#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {36508#(<= ~counter~0 4)} is VALID [2022-04-15 08:54:54,165 INFO L290 TraceCheckUtils]: 30: Hoare triple {36508#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,165 INFO L290 TraceCheckUtils]: 31: Hoare triple {36518#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,166 INFO L272 TraceCheckUtils]: 32: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,166 INFO L290 TraceCheckUtils]: 33: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,166 INFO L290 TraceCheckUtils]: 34: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,166 INFO L290 TraceCheckUtils]: 35: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,167 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #98#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,167 INFO L272 TraceCheckUtils]: 37: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,168 INFO L290 TraceCheckUtils]: 38: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,168 INFO L290 TraceCheckUtils]: 39: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,168 INFO L290 TraceCheckUtils]: 40: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,169 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #100#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,169 INFO L272 TraceCheckUtils]: 42: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,169 INFO L290 TraceCheckUtils]: 43: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,170 INFO L290 TraceCheckUtils]: 44: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,170 INFO L290 TraceCheckUtils]: 45: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,170 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #102#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,171 INFO L272 TraceCheckUtils]: 47: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,171 INFO L290 TraceCheckUtils]: 48: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,171 INFO L290 TraceCheckUtils]: 49: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,172 INFO L290 TraceCheckUtils]: 50: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,172 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #104#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,172 INFO L290 TraceCheckUtils]: 52: Hoare triple {36518#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {36518#(<= ~counter~0 5)} is VALID [2022-04-15 08:54:54,173 INFO L290 TraceCheckUtils]: 53: Hoare triple {36518#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36588#(<= |main_#t~post8| 5)} is VALID [2022-04-15 08:54:54,173 INFO L290 TraceCheckUtils]: 54: Hoare triple {36588#(<= |main_#t~post8| 5)} assume !(#t~post8 < 20);havoc #t~post8; {36419#false} is VALID [2022-04-15 08:54:54,173 INFO L290 TraceCheckUtils]: 55: Hoare triple {36419#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {36419#false} is VALID [2022-04-15 08:54:54,173 INFO L290 TraceCheckUtils]: 56: Hoare triple {36419#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36419#false} is VALID [2022-04-15 08:54:54,173 INFO L290 TraceCheckUtils]: 57: Hoare triple {36419#false} assume !(#t~post7 < 20);havoc #t~post7; {36419#false} is VALID [2022-04-15 08:54:54,173 INFO L290 TraceCheckUtils]: 58: Hoare triple {36419#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; {36419#false} is VALID [2022-04-15 08:54:54,173 INFO L290 TraceCheckUtils]: 59: Hoare triple {36419#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36419#false} is VALID [2022-04-15 08:54:54,173 INFO L290 TraceCheckUtils]: 60: Hoare triple {36419#false} assume !(#t~post6 < 20);havoc #t~post6; {36419#false} is VALID [2022-04-15 08:54:54,173 INFO L272 TraceCheckUtils]: 61: Hoare triple {36419#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)); {36419#false} is VALID [2022-04-15 08:54:54,173 INFO L290 TraceCheckUtils]: 62: Hoare triple {36419#false} ~cond := #in~cond; {36419#false} is VALID [2022-04-15 08:54:54,174 INFO L290 TraceCheckUtils]: 63: Hoare triple {36419#false} assume 0 == ~cond; {36419#false} is VALID [2022-04-15 08:54:54,174 INFO L290 TraceCheckUtils]: 64: Hoare triple {36419#false} assume !false; {36419#false} is VALID [2022-04-15 08:54:54,174 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 17 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:54:54,174 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:54:54,454 INFO L290 TraceCheckUtils]: 64: Hoare triple {36419#false} assume !false; {36419#false} is VALID [2022-04-15 08:54:54,454 INFO L290 TraceCheckUtils]: 63: Hoare triple {36419#false} assume 0 == ~cond; {36419#false} is VALID [2022-04-15 08:54:54,454 INFO L290 TraceCheckUtils]: 62: Hoare triple {36419#false} ~cond := #in~cond; {36419#false} is VALID [2022-04-15 08:54:54,454 INFO L272 TraceCheckUtils]: 61: Hoare triple {36419#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)); {36419#false} is VALID [2022-04-15 08:54:54,454 INFO L290 TraceCheckUtils]: 60: Hoare triple {36419#false} assume !(#t~post6 < 20);havoc #t~post6; {36419#false} is VALID [2022-04-15 08:54:54,454 INFO L290 TraceCheckUtils]: 59: Hoare triple {36419#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36419#false} is VALID [2022-04-15 08:54:54,454 INFO L290 TraceCheckUtils]: 58: Hoare triple {36419#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; {36419#false} is VALID [2022-04-15 08:54:54,454 INFO L290 TraceCheckUtils]: 57: Hoare triple {36419#false} assume !(#t~post7 < 20);havoc #t~post7; {36419#false} is VALID [2022-04-15 08:54:54,454 INFO L290 TraceCheckUtils]: 56: Hoare triple {36419#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36419#false} is VALID [2022-04-15 08:54:54,454 INFO L290 TraceCheckUtils]: 55: Hoare triple {36419#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {36419#false} is VALID [2022-04-15 08:54:54,455 INFO L290 TraceCheckUtils]: 54: Hoare triple {36652#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {36419#false} is VALID [2022-04-15 08:54:54,455 INFO L290 TraceCheckUtils]: 53: Hoare triple {36656#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36652#(< |main_#t~post8| 20)} is VALID [2022-04-15 08:54:54,455 INFO L290 TraceCheckUtils]: 52: Hoare triple {36656#(< ~counter~0 20)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {36656#(< ~counter~0 20)} is VALID [2022-04-15 08:54:54,456 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {36418#true} {36656#(< ~counter~0 20)} #104#return; {36656#(< ~counter~0 20)} is VALID [2022-04-15 08:54:54,456 INFO L290 TraceCheckUtils]: 50: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-15 08:54:54,456 INFO L290 TraceCheckUtils]: 49: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-15 08:54:54,456 INFO L290 TraceCheckUtils]: 48: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-15 08:54:54,456 INFO L272 TraceCheckUtils]: 47: Hoare triple {36656#(< ~counter~0 20)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {36418#true} is VALID [2022-04-15 08:54:54,456 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {36418#true} {36656#(< ~counter~0 20)} #102#return; {36656#(< ~counter~0 20)} is VALID [2022-04-15 08:54:54,456 INFO L290 TraceCheckUtils]: 45: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-15 08:54:54,457 INFO L290 TraceCheckUtils]: 44: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-15 08:54:54,457 INFO L290 TraceCheckUtils]: 43: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-15 08:54:54,457 INFO L272 TraceCheckUtils]: 42: Hoare triple {36656#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {36418#true} is VALID [2022-04-15 08:54:54,457 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {36418#true} {36656#(< ~counter~0 20)} #100#return; {36656#(< ~counter~0 20)} is VALID [2022-04-15 08:54:54,457 INFO L290 TraceCheckUtils]: 40: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-15 08:54:54,457 INFO L290 TraceCheckUtils]: 39: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-15 08:54:54,457 INFO L290 TraceCheckUtils]: 38: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-15 08:54:54,457 INFO L272 TraceCheckUtils]: 37: Hoare triple {36656#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {36418#true} is VALID [2022-04-15 08:54:54,458 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {36418#true} {36656#(< ~counter~0 20)} #98#return; {36656#(< ~counter~0 20)} is VALID [2022-04-15 08:54:54,458 INFO L290 TraceCheckUtils]: 35: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-15 08:54:54,458 INFO L290 TraceCheckUtils]: 34: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-15 08:54:54,458 INFO L290 TraceCheckUtils]: 33: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-15 08:54:54,458 INFO L272 TraceCheckUtils]: 32: Hoare triple {36656#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {36418#true} is VALID [2022-04-15 08:54:54,458 INFO L290 TraceCheckUtils]: 31: Hoare triple {36656#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {36656#(< ~counter~0 20)} is VALID [2022-04-15 08:54:54,459 INFO L290 TraceCheckUtils]: 30: Hoare triple {36726#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36656#(< ~counter~0 20)} is VALID [2022-04-15 08:54:54,460 INFO L290 TraceCheckUtils]: 29: Hoare triple {36726#(< ~counter~0 19)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {36726#(< ~counter~0 19)} is VALID [2022-04-15 08:54:54,460 INFO L290 TraceCheckUtils]: 28: Hoare triple {36726#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {36726#(< ~counter~0 19)} is VALID [2022-04-15 08:54:54,460 INFO L290 TraceCheckUtils]: 27: Hoare triple {36736#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36726#(< ~counter~0 19)} is VALID [2022-04-15 08:54:54,461 INFO L290 TraceCheckUtils]: 26: Hoare triple {36736#(< ~counter~0 18)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36736#(< ~counter~0 18)} is VALID [2022-04-15 08:54:54,461 INFO L290 TraceCheckUtils]: 25: Hoare triple {36736#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {36736#(< ~counter~0 18)} is VALID [2022-04-15 08:54:54,461 INFO L290 TraceCheckUtils]: 24: Hoare triple {36746#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36736#(< ~counter~0 18)} is VALID [2022-04-15 08:54:54,462 INFO L290 TraceCheckUtils]: 23: Hoare triple {36746#(< ~counter~0 17)} ~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; {36746#(< ~counter~0 17)} is VALID [2022-04-15 08:54:54,462 INFO L290 TraceCheckUtils]: 22: Hoare triple {36746#(< ~counter~0 17)} assume !(~c~0 >= ~b~0); {36746#(< ~counter~0 17)} is VALID [2022-04-15 08:54:54,462 INFO L290 TraceCheckUtils]: 21: Hoare triple {36746#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {36746#(< ~counter~0 17)} is VALID [2022-04-15 08:54:54,463 INFO L290 TraceCheckUtils]: 20: Hoare triple {36759#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36746#(< ~counter~0 17)} is VALID [2022-04-15 08:54:54,463 INFO L290 TraceCheckUtils]: 19: Hoare triple {36759#(< ~counter~0 16)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36759#(< ~counter~0 16)} is VALID [2022-04-15 08:54:54,463 INFO L290 TraceCheckUtils]: 18: Hoare triple {36759#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {36759#(< ~counter~0 16)} is VALID [2022-04-15 08:54:54,464 INFO L290 TraceCheckUtils]: 17: Hoare triple {36769#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36759#(< ~counter~0 16)} is VALID [2022-04-15 08:54:54,464 INFO L290 TraceCheckUtils]: 16: Hoare triple {36769#(< ~counter~0 15)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {36769#(< ~counter~0 15)} is VALID [2022-04-15 08:54:54,464 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {36418#true} {36769#(< ~counter~0 15)} #96#return; {36769#(< ~counter~0 15)} is VALID [2022-04-15 08:54:54,465 INFO L290 TraceCheckUtils]: 14: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-15 08:54:54,465 INFO L290 TraceCheckUtils]: 13: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-15 08:54:54,465 INFO L290 TraceCheckUtils]: 12: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-15 08:54:54,465 INFO L272 TraceCheckUtils]: 11: Hoare triple {36769#(< ~counter~0 15)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {36418#true} is VALID [2022-04-15 08:54:54,465 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36418#true} {36769#(< ~counter~0 15)} #94#return; {36769#(< ~counter~0 15)} is VALID [2022-04-15 08:54:54,465 INFO L290 TraceCheckUtils]: 9: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-15 08:54:54,465 INFO L290 TraceCheckUtils]: 8: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-15 08:54:54,465 INFO L290 TraceCheckUtils]: 7: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-15 08:54:54,465 INFO L272 TraceCheckUtils]: 6: Hoare triple {36769#(< ~counter~0 15)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {36418#true} is VALID [2022-04-15 08:54:54,466 INFO L290 TraceCheckUtils]: 5: Hoare triple {36769#(< ~counter~0 15)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {36769#(< ~counter~0 15)} is VALID [2022-04-15 08:54:54,466 INFO L272 TraceCheckUtils]: 4: Hoare triple {36769#(< ~counter~0 15)} call #t~ret9 := main(); {36769#(< ~counter~0 15)} is VALID [2022-04-15 08:54:54,466 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36769#(< ~counter~0 15)} {36418#true} #108#return; {36769#(< ~counter~0 15)} is VALID [2022-04-15 08:54:54,466 INFO L290 TraceCheckUtils]: 2: Hoare triple {36769#(< ~counter~0 15)} assume true; {36769#(< ~counter~0 15)} is VALID [2022-04-15 08:54:54,467 INFO L290 TraceCheckUtils]: 1: Hoare triple {36418#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);~counter~0 := 0; {36769#(< ~counter~0 15)} is VALID [2022-04-15 08:54:54,467 INFO L272 TraceCheckUtils]: 0: Hoare triple {36418#true} call ULTIMATE.init(); {36418#true} is VALID [2022-04-15 08:54:54,467 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 17 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:54:54,467 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:54,467 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [279045842] [2022-04-15 08:54:54,467 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:54,468 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [632406077] [2022-04-15 08:54:54,468 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [632406077] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:54:54,468 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:54:54,468 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-15 08:54:54,468 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:54,468 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1217829617] [2022-04-15 08:54:54,468 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1217829617] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:54,468 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:54,468 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 08:54:54,468 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [445009266] [2022-04-15 08:54:54,468 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:54,469 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 65 [2022-04-15 08:54:54,469 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:54,469 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:54,504 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-15 08:54:54,504 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 08:54:54,504 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:54,504 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 08:54:54,504 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-15 08:54:54,505 INFO L87 Difference]: Start difference. First operand 567 states and 783 transitions. Second operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:55,943 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:55,943 INFO L93 Difference]: Finished difference Result 839 states and 1203 transitions. [2022-04-15 08:54:55,943 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 08:54:55,943 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 65 [2022-04-15 08:54:55,943 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:54:55,943 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:55,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 153 transitions. [2022-04-15 08:54:55,945 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:55,945 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 153 transitions. [2022-04-15 08:54:55,945 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 153 transitions. [2022-04-15 08:54:56,048 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:56,063 INFO L225 Difference]: With dead ends: 839 [2022-04-15 08:54:56,063 INFO L226 Difference]: Without dead ends: 567 [2022-04-15 08:54:56,064 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 132 GetRequests, 115 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=135, Invalid=207, Unknown=0, NotChecked=0, Total=342 [2022-04-15 08:54:56,065 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 77 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 203 SdHoareTripleChecker+Invalid, 115 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:54:56,065 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [77 Valid, 203 Invalid, 115 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:54:56,065 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 567 states. [2022-04-15 08:54:57,215 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 567 to 567. [2022-04-15 08:54:57,215 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:54:57,216 INFO L82 GeneralOperation]: Start isEquivalent. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-15 08:54:57,216 INFO L74 IsIncluded]: Start isIncluded. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-15 08:54:57,217 INFO L87 Difference]: Start difference. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-15 08:54:57,229 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:57,229 INFO L93 Difference]: Finished difference Result 567 states and 779 transitions. [2022-04-15 08:54:57,229 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-15 08:54:57,230 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:57,230 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:57,231 INFO L74 IsIncluded]: Start isIncluded. First operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 567 states. [2022-04-15 08:54:57,231 INFO L87 Difference]: Start difference. First operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 567 states. [2022-04-15 08:54:57,244 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:54:57,244 INFO L93 Difference]: Finished difference Result 567 states and 779 transitions. [2022-04-15 08:54:57,244 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-15 08:54:57,245 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:54:57,245 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:54:57,245 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:54:57,245 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:54:57,246 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-15 08:54:57,262 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 567 states to 567 states and 779 transitions. [2022-04-15 08:54:57,262 INFO L78 Accepts]: Start accepts. Automaton has 567 states and 779 transitions. Word has length 65 [2022-04-15 08:54:57,262 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:54:57,262 INFO L478 AbstractCegarLoop]: Abstraction has 567 states and 779 transitions. [2022-04-15 08:54:57,262 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:54:57,262 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 567 states and 779 transitions. [2022-04-15 08:54:58,418 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 779 edges. 779 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:54:58,418 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-15 08:54:58,419 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-15 08:54:58,419 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:54:58,419 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:54:58,436 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-15 08:54:58,635 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-04-15 08:54:58,635 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:54:58,636 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:54:58,636 INFO L85 PathProgramCache]: Analyzing trace with hash -544828664, now seen corresponding path program 1 times [2022-04-15 08:54:58,636 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:58,636 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1931297043] [2022-04-15 08:54:58,636 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:54:58,636 INFO L85 PathProgramCache]: Analyzing trace with hash -544828664, now seen corresponding path program 2 times [2022-04-15 08:54:58,636 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:54:58,636 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1738249399] [2022-04-15 08:54:58,637 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:54:58,637 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:54:58,657 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:54:58,657 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1092382361] [2022-04-15 08:54:58,657 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:54:58,658 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:54:58,658 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:54:58,659 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:54:58,659 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-15 08:54:58,707 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:54:58,708 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:54:58,709 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-15 08:54:58,719 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:54:58,720 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:54:58,893 INFO L272 TraceCheckUtils]: 0: Hoare triple {40775#true} call ULTIMATE.init(); {40775#true} is VALID [2022-04-15 08:54:58,893 INFO L290 TraceCheckUtils]: 1: Hoare triple {40775#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);~counter~0 := 0; {40775#true} is VALID [2022-04-15 08:54:58,893 INFO L290 TraceCheckUtils]: 2: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40775#true} {40775#true} #108#return; {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L272 TraceCheckUtils]: 4: Hoare triple {40775#true} call #t~ret9 := main(); {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L290 TraceCheckUtils]: 5: Hoare triple {40775#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L272 TraceCheckUtils]: 6: Hoare triple {40775#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L290 TraceCheckUtils]: 7: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L290 TraceCheckUtils]: 8: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L290 TraceCheckUtils]: 9: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40775#true} {40775#true} #94#return; {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L272 TraceCheckUtils]: 11: Hoare triple {40775#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L290 TraceCheckUtils]: 12: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L290 TraceCheckUtils]: 13: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L290 TraceCheckUtils]: 14: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {40775#true} {40775#true} #96#return; {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L290 TraceCheckUtils]: 16: Hoare triple {40775#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {40775#true} is VALID [2022-04-15 08:54:58,894 INFO L290 TraceCheckUtils]: 17: Hoare triple {40775#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40775#true} is VALID [2022-04-15 08:54:58,895 INFO L290 TraceCheckUtils]: 18: Hoare triple {40775#true} assume !!(#t~post6 < 20);havoc #t~post6; {40775#true} is VALID [2022-04-15 08:54:58,895 INFO L290 TraceCheckUtils]: 19: Hoare triple {40775#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {40775#true} is VALID [2022-04-15 08:54:58,895 INFO L290 TraceCheckUtils]: 20: Hoare triple {40775#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40775#true} is VALID [2022-04-15 08:54:58,895 INFO L290 TraceCheckUtils]: 21: Hoare triple {40775#true} assume !!(#t~post7 < 20);havoc #t~post7; {40775#true} is VALID [2022-04-15 08:54:58,895 INFO L290 TraceCheckUtils]: 22: Hoare triple {40775#true} assume !(~c~0 >= ~b~0); {40775#true} is VALID [2022-04-15 08:54:58,895 INFO L290 TraceCheckUtils]: 23: Hoare triple {40775#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; {40775#true} is VALID [2022-04-15 08:54:58,895 INFO L290 TraceCheckUtils]: 24: Hoare triple {40775#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40775#true} is VALID [2022-04-15 08:54:58,895 INFO L290 TraceCheckUtils]: 25: Hoare triple {40775#true} assume !!(#t~post6 < 20);havoc #t~post6; {40775#true} is VALID [2022-04-15 08:54:58,895 INFO L290 TraceCheckUtils]: 26: Hoare triple {40775#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {40775#true} is VALID [2022-04-15 08:54:58,895 INFO L290 TraceCheckUtils]: 27: Hoare triple {40775#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40775#true} is VALID [2022-04-15 08:54:58,895 INFO L290 TraceCheckUtils]: 28: Hoare triple {40775#true} assume !!(#t~post7 < 20);havoc #t~post7; {40775#true} is VALID [2022-04-15 08:54:58,896 INFO L290 TraceCheckUtils]: 29: Hoare triple {40775#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 08:54:58,896 INFO L290 TraceCheckUtils]: 30: Hoare triple {40867#(<= main_~v~0 main_~b~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 08:54:58,896 INFO L290 TraceCheckUtils]: 31: Hoare triple {40867#(<= main_~v~0 main_~b~0)} assume !!(#t~post8 < 20);havoc #t~post8; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 08:54:58,896 INFO L272 TraceCheckUtils]: 32: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {40775#true} is VALID [2022-04-15 08:54:58,896 INFO L290 TraceCheckUtils]: 33: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-15 08:54:58,897 INFO L290 TraceCheckUtils]: 34: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-15 08:54:58,897 INFO L290 TraceCheckUtils]: 35: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-15 08:54:58,897 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #98#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 08:54:58,897 INFO L272 TraceCheckUtils]: 37: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {40775#true} is VALID [2022-04-15 08:54:58,897 INFO L290 TraceCheckUtils]: 38: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-15 08:54:58,897 INFO L290 TraceCheckUtils]: 39: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-15 08:54:58,897 INFO L290 TraceCheckUtils]: 40: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-15 08:54:58,898 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #100#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 08:54:58,898 INFO L272 TraceCheckUtils]: 42: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {40775#true} is VALID [2022-04-15 08:54:58,898 INFO L290 TraceCheckUtils]: 43: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-15 08:54:58,898 INFO L290 TraceCheckUtils]: 44: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-15 08:54:58,898 INFO L290 TraceCheckUtils]: 45: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-15 08:54:58,899 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #102#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 08:54:58,899 INFO L272 TraceCheckUtils]: 47: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {40775#true} is VALID [2022-04-15 08:54:58,899 INFO L290 TraceCheckUtils]: 48: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-15 08:54:58,899 INFO L290 TraceCheckUtils]: 49: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-15 08:54:58,899 INFO L290 TraceCheckUtils]: 50: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-15 08:54:58,899 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #104#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-15 08:54:58,900 INFO L290 TraceCheckUtils]: 52: Hoare triple {40867#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {40937#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-15 08:54:58,901 INFO L290 TraceCheckUtils]: 53: Hoare triple {40937#(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; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-15 08:54:58,901 INFO L290 TraceCheckUtils]: 54: Hoare triple {40941#(< main_~c~0 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-15 08:54:58,901 INFO L290 TraceCheckUtils]: 55: Hoare triple {40941#(< main_~c~0 main_~b~0)} assume !!(#t~post7 < 20);havoc #t~post7; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-15 08:54:58,901 INFO L290 TraceCheckUtils]: 56: Hoare triple {40941#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {40776#false} is VALID [2022-04-15 08:54:58,901 INFO L290 TraceCheckUtils]: 57: Hoare triple {40776#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L290 TraceCheckUtils]: 58: Hoare triple {40776#false} assume !(#t~post8 < 20);havoc #t~post8; {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L290 TraceCheckUtils]: 59: Hoare triple {40776#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L290 TraceCheckUtils]: 60: Hoare triple {40776#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L290 TraceCheckUtils]: 61: Hoare triple {40776#false} assume !(#t~post7 < 20);havoc #t~post7; {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L290 TraceCheckUtils]: 62: Hoare triple {40776#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; {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L290 TraceCheckUtils]: 63: Hoare triple {40776#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L290 TraceCheckUtils]: 64: Hoare triple {40776#false} assume !(#t~post6 < 20);havoc #t~post6; {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L272 TraceCheckUtils]: 65: Hoare triple {40776#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)); {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L290 TraceCheckUtils]: 66: Hoare triple {40776#false} ~cond := #in~cond; {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L290 TraceCheckUtils]: 67: Hoare triple {40776#false} assume 0 == ~cond; {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L290 TraceCheckUtils]: 68: Hoare triple {40776#false} assume !false; {40776#false} is VALID [2022-04-15 08:54:58,902 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 28 proven. 0 refuted. 0 times theorem prover too weak. 34 trivial. 0 not checked. [2022-04-15 08:54:58,903 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 08:54:58,903 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:54:58,903 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1738249399] [2022-04-15 08:54:58,903 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:54:58,903 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1092382361] [2022-04-15 08:54:58,903 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1092382361] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:58,903 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:58,903 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:54:58,903 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:54:58,903 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1931297043] [2022-04-15 08:54:58,903 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1931297043] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:54:58,903 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:54:58,903 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 08:54:58,904 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [103298921] [2022-04-15 08:54:58,904 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:54:58,904 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 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 69 [2022-04-15 08:54:58,904 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:54:58,904 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 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-15 08:54:58,942 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-15 08:54:58,943 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 08:54:58,943 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:54:58,943 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 08:54:58,943 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 08:54:58,943 INFO L87 Difference]: Start difference. First operand 567 states and 779 transitions. Second operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 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-15 08:55:00,552 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:00,553 INFO L93 Difference]: Finished difference Result 980 states and 1387 transitions. [2022-04-15 08:55:00,553 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 08:55:00,553 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 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 69 [2022-04-15 08:55:00,553 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:55:00,553 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 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-15 08:55:00,554 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-15 08:55:00,554 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 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-15 08:55:00,554 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-15 08:55:00,554 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 104 transitions. [2022-04-15 08:55:00,624 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:55:00,640 INFO L225 Difference]: With dead ends: 980 [2022-04-15 08:55:00,640 INFO L226 Difference]: Without dead ends: 624 [2022-04-15 08:55:00,641 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 66 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-15 08:55:00,642 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 11 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 121 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.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:55:00,642 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 121 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:55:00,642 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 624 states. [2022-04-15 08:55:01,917 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 624 to 568. [2022-04-15 08:55:01,918 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:55:01,918 INFO L82 GeneralOperation]: Start isEquivalent. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:55:01,919 INFO L74 IsIncluded]: Start isIncluded. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:55:01,920 INFO L87 Difference]: Start difference. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:55:01,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:01,933 INFO L93 Difference]: Finished difference Result 624 states and 852 transitions. [2022-04-15 08:55:01,933 INFO L276 IsEmpty]: Start isEmpty. Operand 624 states and 852 transitions. [2022-04-15 08:55:01,934 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:55:01,935 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:55:01,935 INFO L74 IsIncluded]: Start isIncluded. First operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) Second operand 624 states. [2022-04-15 08:55:01,936 INFO L87 Difference]: Start difference. First operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) Second operand 624 states. [2022-04-15 08:55:01,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:01,950 INFO L93 Difference]: Finished difference Result 624 states and 852 transitions. [2022-04-15 08:55:01,950 INFO L276 IsEmpty]: Start isEmpty. Operand 624 states and 852 transitions. [2022-04-15 08:55:01,951 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:55:01,951 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:55:01,951 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:55:01,951 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:55:01,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:55:01,967 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 568 states to 568 states and 779 transitions. [2022-04-15 08:55:01,968 INFO L78 Accepts]: Start accepts. Automaton has 568 states and 779 transitions. Word has length 69 [2022-04-15 08:55:01,968 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:55:01,968 INFO L478 AbstractCegarLoop]: Abstraction has 568 states and 779 transitions. [2022-04-15 08:55:01,968 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 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-15 08:55:01,968 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 568 states and 779 transitions. [2022-04-15 08:55:03,258 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 779 edges. 779 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:55:03,258 INFO L276 IsEmpty]: Start isEmpty. Operand 568 states and 779 transitions. [2022-04-15 08:55:03,258 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-15 08:55:03,259 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:55:03,259 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:55:03,275 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-15 08:55:03,459 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:55:03,459 INFO L403 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:55:03,459 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:55:03,460 INFO L85 PathProgramCache]: Analyzing trace with hash -996119216, now seen corresponding path program 3 times [2022-04-15 08:55:03,460 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:55:03,460 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2084038178] [2022-04-15 08:55:03,460 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:55:03,460 INFO L85 PathProgramCache]: Analyzing trace with hash -996119216, now seen corresponding path program 4 times [2022-04-15 08:55:03,460 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:55:03,460 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [917480628] [2022-04-15 08:55:03,460 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:55:03,460 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:55:03,474 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:55:03,474 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [221018645] [2022-04-15 08:55:03,474 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:55:03,474 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:55:03,474 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:55:03,475 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:55:03,476 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-15 08:55:03,521 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:55:03,521 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:55:03,522 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 08:55:03,535 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:55:03,536 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:55:03,819 INFO L272 TraceCheckUtils]: 0: Hoare triple {45333#true} call ULTIMATE.init(); {45333#true} is VALID [2022-04-15 08:55:03,820 INFO L290 TraceCheckUtils]: 1: Hoare triple {45333#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);~counter~0 := 0; {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,820 INFO L290 TraceCheckUtils]: 2: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,820 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45341#(<= ~counter~0 0)} {45333#true} #108#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,821 INFO L272 TraceCheckUtils]: 4: Hoare triple {45341#(<= ~counter~0 0)} call #t~ret9 := main(); {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,821 INFO L290 TraceCheckUtils]: 5: Hoare triple {45341#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,821 INFO L272 TraceCheckUtils]: 6: Hoare triple {45341#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,822 INFO L290 TraceCheckUtils]: 7: Hoare triple {45341#(<= ~counter~0 0)} ~cond := #in~cond; {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,822 INFO L290 TraceCheckUtils]: 8: Hoare triple {45341#(<= ~counter~0 0)} assume !(0 == ~cond); {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,822 INFO L290 TraceCheckUtils]: 9: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,823 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45341#(<= ~counter~0 0)} {45341#(<= ~counter~0 0)} #94#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,823 INFO L272 TraceCheckUtils]: 11: Hoare triple {45341#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,823 INFO L290 TraceCheckUtils]: 12: Hoare triple {45341#(<= ~counter~0 0)} ~cond := #in~cond; {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,823 INFO L290 TraceCheckUtils]: 13: Hoare triple {45341#(<= ~counter~0 0)} assume !(0 == ~cond); {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,824 INFO L290 TraceCheckUtils]: 14: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,824 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45341#(<= ~counter~0 0)} {45341#(<= ~counter~0 0)} #96#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,824 INFO L290 TraceCheckUtils]: 16: Hoare triple {45341#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {45341#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:03,825 INFO L290 TraceCheckUtils]: 17: Hoare triple {45341#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45390#(<= ~counter~0 1)} is VALID [2022-04-15 08:55:03,826 INFO L290 TraceCheckUtils]: 18: Hoare triple {45390#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {45390#(<= ~counter~0 1)} is VALID [2022-04-15 08:55:03,826 INFO L290 TraceCheckUtils]: 19: Hoare triple {45390#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45390#(<= ~counter~0 1)} is VALID [2022-04-15 08:55:03,826 INFO L290 TraceCheckUtils]: 20: Hoare triple {45390#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45400#(<= ~counter~0 2)} is VALID [2022-04-15 08:55:03,827 INFO L290 TraceCheckUtils]: 21: Hoare triple {45400#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {45400#(<= ~counter~0 2)} is VALID [2022-04-15 08:55:03,827 INFO L290 TraceCheckUtils]: 22: Hoare triple {45400#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45400#(<= ~counter~0 2)} is VALID [2022-04-15 08:55:03,827 INFO L290 TraceCheckUtils]: 23: Hoare triple {45400#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,828 INFO L290 TraceCheckUtils]: 24: Hoare triple {45410#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,828 INFO L272 TraceCheckUtils]: 25: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,828 INFO L290 TraceCheckUtils]: 26: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,829 INFO L290 TraceCheckUtils]: 27: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,829 INFO L290 TraceCheckUtils]: 28: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,829 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #98#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,830 INFO L272 TraceCheckUtils]: 30: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,830 INFO L290 TraceCheckUtils]: 31: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,830 INFO L290 TraceCheckUtils]: 32: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,831 INFO L290 TraceCheckUtils]: 33: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,831 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #100#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,832 INFO L272 TraceCheckUtils]: 35: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,832 INFO L290 TraceCheckUtils]: 36: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,836 INFO L290 TraceCheckUtils]: 37: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,836 INFO L290 TraceCheckUtils]: 38: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,837 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #102#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,837 INFO L272 TraceCheckUtils]: 40: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,837 INFO L290 TraceCheckUtils]: 41: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,838 INFO L290 TraceCheckUtils]: 42: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,838 INFO L290 TraceCheckUtils]: 43: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,838 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #104#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,839 INFO L290 TraceCheckUtils]: 45: Hoare triple {45410#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,839 INFO L290 TraceCheckUtils]: 46: Hoare triple {45410#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45410#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:03,840 INFO L290 TraceCheckUtils]: 47: Hoare triple {45410#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45483#(<= ~counter~0 4)} is VALID [2022-04-15 08:55:03,840 INFO L290 TraceCheckUtils]: 48: Hoare triple {45483#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {45483#(<= ~counter~0 4)} is VALID [2022-04-15 08:55:03,840 INFO L290 TraceCheckUtils]: 49: Hoare triple {45483#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {45483#(<= ~counter~0 4)} is VALID [2022-04-15 08:55:03,840 INFO L290 TraceCheckUtils]: 50: Hoare triple {45483#(<= ~counter~0 4)} ~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; {45483#(<= ~counter~0 4)} is VALID [2022-04-15 08:55:03,841 INFO L290 TraceCheckUtils]: 51: Hoare triple {45483#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45496#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:03,841 INFO L290 TraceCheckUtils]: 52: Hoare triple {45496#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {45496#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:03,841 INFO L290 TraceCheckUtils]: 53: Hoare triple {45496#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45496#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:03,842 INFO L290 TraceCheckUtils]: 54: Hoare triple {45496#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45506#(<= ~counter~0 6)} is VALID [2022-04-15 08:55:03,842 INFO L290 TraceCheckUtils]: 55: Hoare triple {45506#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {45506#(<= ~counter~0 6)} is VALID [2022-04-15 08:55:03,842 INFO L290 TraceCheckUtils]: 56: Hoare triple {45506#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45506#(<= ~counter~0 6)} is VALID [2022-04-15 08:55:03,843 INFO L290 TraceCheckUtils]: 57: Hoare triple {45506#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45516#(<= |main_#t~post8| 6)} is VALID [2022-04-15 08:55:03,845 INFO L290 TraceCheckUtils]: 58: Hoare triple {45516#(<= |main_#t~post8| 6)} assume !(#t~post8 < 20);havoc #t~post8; {45334#false} is VALID [2022-04-15 08:55:03,845 INFO L290 TraceCheckUtils]: 59: Hoare triple {45334#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45334#false} is VALID [2022-04-15 08:55:03,845 INFO L290 TraceCheckUtils]: 60: Hoare triple {45334#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45334#false} is VALID [2022-04-15 08:55:03,845 INFO L290 TraceCheckUtils]: 61: Hoare triple {45334#false} assume !(#t~post7 < 20);havoc #t~post7; {45334#false} is VALID [2022-04-15 08:55:03,845 INFO L290 TraceCheckUtils]: 62: Hoare triple {45334#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; {45334#false} is VALID [2022-04-15 08:55:03,846 INFO L290 TraceCheckUtils]: 63: Hoare triple {45334#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45334#false} is VALID [2022-04-15 08:55:03,846 INFO L290 TraceCheckUtils]: 64: Hoare triple {45334#false} assume !(#t~post6 < 20);havoc #t~post6; {45334#false} is VALID [2022-04-15 08:55:03,846 INFO L272 TraceCheckUtils]: 65: Hoare triple {45334#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)); {45334#false} is VALID [2022-04-15 08:55:03,846 INFO L290 TraceCheckUtils]: 66: Hoare triple {45334#false} ~cond := #in~cond; {45334#false} is VALID [2022-04-15 08:55:03,846 INFO L290 TraceCheckUtils]: 67: Hoare triple {45334#false} assume 0 == ~cond; {45334#false} is VALID [2022-04-15 08:55:03,846 INFO L290 TraceCheckUtils]: 68: Hoare triple {45334#false} assume !false; {45334#false} is VALID [2022-04-15 08:55:03,846 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:55:03,846 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:55:04,237 INFO L290 TraceCheckUtils]: 68: Hoare triple {45334#false} assume !false; {45334#false} is VALID [2022-04-15 08:55:04,237 INFO L290 TraceCheckUtils]: 67: Hoare triple {45334#false} assume 0 == ~cond; {45334#false} is VALID [2022-04-15 08:55:04,237 INFO L290 TraceCheckUtils]: 66: Hoare triple {45334#false} ~cond := #in~cond; {45334#false} is VALID [2022-04-15 08:55:04,237 INFO L272 TraceCheckUtils]: 65: Hoare triple {45334#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)); {45334#false} is VALID [2022-04-15 08:55:04,237 INFO L290 TraceCheckUtils]: 64: Hoare triple {45334#false} assume !(#t~post6 < 20);havoc #t~post6; {45334#false} is VALID [2022-04-15 08:55:04,237 INFO L290 TraceCheckUtils]: 63: Hoare triple {45334#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45334#false} is VALID [2022-04-15 08:55:04,237 INFO L290 TraceCheckUtils]: 62: Hoare triple {45334#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; {45334#false} is VALID [2022-04-15 08:55:04,238 INFO L290 TraceCheckUtils]: 61: Hoare triple {45334#false} assume !(#t~post7 < 20);havoc #t~post7; {45334#false} is VALID [2022-04-15 08:55:04,238 INFO L290 TraceCheckUtils]: 60: Hoare triple {45334#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45334#false} is VALID [2022-04-15 08:55:04,238 INFO L290 TraceCheckUtils]: 59: Hoare triple {45334#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45334#false} is VALID [2022-04-15 08:55:04,238 INFO L290 TraceCheckUtils]: 58: Hoare triple {45580#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {45334#false} is VALID [2022-04-15 08:55:04,238 INFO L290 TraceCheckUtils]: 57: Hoare triple {45584#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45580#(< |main_#t~post8| 20)} is VALID [2022-04-15 08:55:04,239 INFO L290 TraceCheckUtils]: 56: Hoare triple {45584#(< ~counter~0 20)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45584#(< ~counter~0 20)} is VALID [2022-04-15 08:55:04,239 INFO L290 TraceCheckUtils]: 55: Hoare triple {45584#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {45584#(< ~counter~0 20)} is VALID [2022-04-15 08:55:04,240 INFO L290 TraceCheckUtils]: 54: Hoare triple {45594#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45584#(< ~counter~0 20)} is VALID [2022-04-15 08:55:04,240 INFO L290 TraceCheckUtils]: 53: Hoare triple {45594#(< ~counter~0 19)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45594#(< ~counter~0 19)} is VALID [2022-04-15 08:55:04,240 INFO L290 TraceCheckUtils]: 52: Hoare triple {45594#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {45594#(< ~counter~0 19)} is VALID [2022-04-15 08:55:04,241 INFO L290 TraceCheckUtils]: 51: Hoare triple {45604#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45594#(< ~counter~0 19)} is VALID [2022-04-15 08:55:04,241 INFO L290 TraceCheckUtils]: 50: Hoare triple {45604#(< ~counter~0 18)} ~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; {45604#(< ~counter~0 18)} is VALID [2022-04-15 08:55:04,242 INFO L290 TraceCheckUtils]: 49: Hoare triple {45604#(< ~counter~0 18)} assume !(~c~0 >= ~b~0); {45604#(< ~counter~0 18)} is VALID [2022-04-15 08:55:04,242 INFO L290 TraceCheckUtils]: 48: Hoare triple {45604#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {45604#(< ~counter~0 18)} is VALID [2022-04-15 08:55:04,242 INFO L290 TraceCheckUtils]: 47: Hoare triple {45617#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45604#(< ~counter~0 18)} is VALID [2022-04-15 08:55:04,249 INFO L290 TraceCheckUtils]: 46: Hoare triple {45617#(< ~counter~0 17)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45617#(< ~counter~0 17)} is VALID [2022-04-15 08:55:04,249 INFO L290 TraceCheckUtils]: 45: Hoare triple {45617#(< ~counter~0 17)} assume !(~c~0 >= 2 * ~v~0); {45617#(< ~counter~0 17)} is VALID [2022-04-15 08:55:04,250 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {45333#true} {45617#(< ~counter~0 17)} #104#return; {45617#(< ~counter~0 17)} is VALID [2022-04-15 08:55:04,250 INFO L290 TraceCheckUtils]: 43: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-15 08:55:04,250 INFO L290 TraceCheckUtils]: 42: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-15 08:55:04,250 INFO L290 TraceCheckUtils]: 41: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-15 08:55:04,250 INFO L272 TraceCheckUtils]: 40: Hoare triple {45617#(< ~counter~0 17)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {45333#true} is VALID [2022-04-15 08:55:04,251 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {45333#true} {45617#(< ~counter~0 17)} #102#return; {45617#(< ~counter~0 17)} is VALID [2022-04-15 08:55:04,251 INFO L290 TraceCheckUtils]: 38: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-15 08:55:04,251 INFO L290 TraceCheckUtils]: 37: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-15 08:55:04,251 INFO L290 TraceCheckUtils]: 36: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-15 08:55:04,251 INFO L272 TraceCheckUtils]: 35: Hoare triple {45617#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45333#true} is VALID [2022-04-15 08:55:04,251 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {45333#true} {45617#(< ~counter~0 17)} #100#return; {45617#(< ~counter~0 17)} is VALID [2022-04-15 08:55:04,252 INFO L290 TraceCheckUtils]: 33: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-15 08:55:04,252 INFO L290 TraceCheckUtils]: 32: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-15 08:55:04,252 INFO L290 TraceCheckUtils]: 31: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-15 08:55:04,252 INFO L272 TraceCheckUtils]: 30: Hoare triple {45617#(< ~counter~0 17)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45333#true} is VALID [2022-04-15 08:55:04,252 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {45333#true} {45617#(< ~counter~0 17)} #98#return; {45617#(< ~counter~0 17)} is VALID [2022-04-15 08:55:04,252 INFO L290 TraceCheckUtils]: 28: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-15 08:55:04,252 INFO L290 TraceCheckUtils]: 27: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-15 08:55:04,253 INFO L290 TraceCheckUtils]: 26: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-15 08:55:04,253 INFO L272 TraceCheckUtils]: 25: Hoare triple {45617#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45333#true} is VALID [2022-04-15 08:55:04,253 INFO L290 TraceCheckUtils]: 24: Hoare triple {45617#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {45617#(< ~counter~0 17)} is VALID [2022-04-15 08:55:04,254 INFO L290 TraceCheckUtils]: 23: Hoare triple {45690#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45617#(< ~counter~0 17)} is VALID [2022-04-15 08:55:04,254 INFO L290 TraceCheckUtils]: 22: Hoare triple {45690#(< ~counter~0 16)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45690#(< ~counter~0 16)} is VALID [2022-04-15 08:55:04,254 INFO L290 TraceCheckUtils]: 21: Hoare triple {45690#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {45690#(< ~counter~0 16)} is VALID [2022-04-15 08:55:04,255 INFO L290 TraceCheckUtils]: 20: Hoare triple {45700#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45690#(< ~counter~0 16)} is VALID [2022-04-15 08:55:04,255 INFO L290 TraceCheckUtils]: 19: Hoare triple {45700#(< ~counter~0 15)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45700#(< ~counter~0 15)} is VALID [2022-04-15 08:55:04,255 INFO L290 TraceCheckUtils]: 18: Hoare triple {45700#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {45700#(< ~counter~0 15)} is VALID [2022-04-15 08:55:04,256 INFO L290 TraceCheckUtils]: 17: Hoare triple {45710#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45700#(< ~counter~0 15)} is VALID [2022-04-15 08:55:04,256 INFO L290 TraceCheckUtils]: 16: Hoare triple {45710#(< ~counter~0 14)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {45710#(< ~counter~0 14)} is VALID [2022-04-15 08:55:04,257 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45333#true} {45710#(< ~counter~0 14)} #96#return; {45710#(< ~counter~0 14)} is VALID [2022-04-15 08:55:04,257 INFO L290 TraceCheckUtils]: 14: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-15 08:55:04,257 INFO L290 TraceCheckUtils]: 13: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-15 08:55:04,257 INFO L290 TraceCheckUtils]: 12: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-15 08:55:04,257 INFO L272 TraceCheckUtils]: 11: Hoare triple {45710#(< ~counter~0 14)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45333#true} is VALID [2022-04-15 08:55:04,257 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45333#true} {45710#(< ~counter~0 14)} #94#return; {45710#(< ~counter~0 14)} is VALID [2022-04-15 08:55:04,257 INFO L290 TraceCheckUtils]: 9: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-15 08:55:04,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-15 08:55:04,257 INFO L290 TraceCheckUtils]: 7: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-15 08:55:04,258 INFO L272 TraceCheckUtils]: 6: Hoare triple {45710#(< ~counter~0 14)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45333#true} is VALID [2022-04-15 08:55:04,258 INFO L290 TraceCheckUtils]: 5: Hoare triple {45710#(< ~counter~0 14)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {45710#(< ~counter~0 14)} is VALID [2022-04-15 08:55:04,258 INFO L272 TraceCheckUtils]: 4: Hoare triple {45710#(< ~counter~0 14)} call #t~ret9 := main(); {45710#(< ~counter~0 14)} is VALID [2022-04-15 08:55:04,258 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45710#(< ~counter~0 14)} {45333#true} #108#return; {45710#(< ~counter~0 14)} is VALID [2022-04-15 08:55:04,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {45710#(< ~counter~0 14)} assume true; {45710#(< ~counter~0 14)} is VALID [2022-04-15 08:55:04,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {45333#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);~counter~0 := 0; {45710#(< ~counter~0 14)} is VALID [2022-04-15 08:55:04,259 INFO L272 TraceCheckUtils]: 0: Hoare triple {45333#true} call ULTIMATE.init(); {45333#true} is VALID [2022-04-15 08:55:04,259 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:55:04,259 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:55:04,260 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [917480628] [2022-04-15 08:55:04,260 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:55:04,260 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [221018645] [2022-04-15 08:55:04,260 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [221018645] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:55:04,260 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:55:04,260 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-15 08:55:04,260 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:55:04,260 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2084038178] [2022-04-15 08:55:04,260 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2084038178] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:55:04,260 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:55:04,260 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 08:55:04,260 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2094771191] [2022-04-15 08:55:04,260 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:55:04,261 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2022-04-15 08:55:04,261 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:55:04,261 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:55:04,299 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:55:04,299 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 08:55:04,299 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:55:04,299 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 08:55:04,299 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-15 08:55:04,299 INFO L87 Difference]: Start difference. First operand 568 states and 779 transitions. Second operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:55:06,044 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:06,044 INFO L93 Difference]: Finished difference Result 914 states and 1304 transitions. [2022-04-15 08:55:06,049 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-15 08:55:06,049 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2022-04-15 08:55:06,049 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:55:06,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:55:06,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 181 transitions. [2022-04-15 08:55:06,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:55:06,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 181 transitions. [2022-04-15 08:55:06,054 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 181 transitions. [2022-04-15 08:55:06,188 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 181 edges. 181 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:55:06,203 INFO L225 Difference]: With dead ends: 914 [2022-04-15 08:55:06,203 INFO L226 Difference]: Without dead ends: 584 [2022-04-15 08:55:06,204 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 141 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=185, Invalid=277, Unknown=0, NotChecked=0, Total=462 [2022-04-15 08:55:06,204 INFO L913 BasicCegarLoop]: 61 mSDtfsCounter, 86 mSDsluCounter, 215 mSDsCounter, 0 mSdLazyCounter, 100 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 276 SdHoareTripleChecker+Invalid, 137 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 100 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 08:55:06,204 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [86 Valid, 276 Invalid, 137 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 08:55:06,205 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 584 states. [2022-04-15 08:55:07,473 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 584 to 575. [2022-04-15 08:55:07,473 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:55:07,474 INFO L82 GeneralOperation]: Start isEquivalent. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:55:07,474 INFO L74 IsIncluded]: Start isIncluded. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:55:07,475 INFO L87 Difference]: Start difference. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:55:07,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:07,497 INFO L93 Difference]: Finished difference Result 584 states and 794 transitions. [2022-04-15 08:55:07,497 INFO L276 IsEmpty]: Start isEmpty. Operand 584 states and 794 transitions. [2022-04-15 08:55:07,498 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:55:07,498 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:55:07,498 INFO L74 IsIncluded]: Start isIncluded. First operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 584 states. [2022-04-15 08:55:07,499 INFO L87 Difference]: Start difference. First operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 584 states. [2022-04-15 08:55:07,511 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:07,511 INFO L93 Difference]: Finished difference Result 584 states and 794 transitions. [2022-04-15 08:55:07,511 INFO L276 IsEmpty]: Start isEmpty. Operand 584 states and 794 transitions. [2022-04-15 08:55:07,512 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:55:07,512 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:55:07,512 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:55:07,512 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:55:07,513 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-15 08:55:07,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 575 states to 575 states and 786 transitions. [2022-04-15 08:55:07,529 INFO L78 Accepts]: Start accepts. Automaton has 575 states and 786 transitions. Word has length 69 [2022-04-15 08:55:07,529 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:55:07,529 INFO L478 AbstractCegarLoop]: Abstraction has 575 states and 786 transitions. [2022-04-15 08:55:07,529 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:55:07,529 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 575 states and 786 transitions. [2022-04-15 08:55:08,754 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 786 edges. 786 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:55:08,754 INFO L276 IsEmpty]: Start isEmpty. Operand 575 states and 786 transitions. [2022-04-15 08:55:08,755 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2022-04-15 08:55:08,755 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:55:08,755 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 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, 1, 1, 1, 1, 1] [2022-04-15 08:55:08,773 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-15 08:55:08,971 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:55:08,971 INFO L403 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:55:08,972 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:55:08,972 INFO L85 PathProgramCache]: Analyzing trace with hash 862858316, now seen corresponding path program 3 times [2022-04-15 08:55:08,972 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:55:08,972 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1971310845] [2022-04-15 08:55:08,972 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:55:08,972 INFO L85 PathProgramCache]: Analyzing trace with hash 862858316, now seen corresponding path program 4 times [2022-04-15 08:55:08,972 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:55:08,972 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2081652740] [2022-04-15 08:55:08,972 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:55:08,973 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:55:08,988 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:55:08,989 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1081610870] [2022-04-15 08:55:08,989 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:55:08,989 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:55:08,989 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:55:08,990 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:55:09,009 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-04-15 08:55:09,055 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:55:09,055 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:55:09,056 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-15 08:55:09,070 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:55:09,072 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:55:09,376 INFO L272 TraceCheckUtils]: 0: Hoare triple {49918#true} call ULTIMATE.init(); {49918#true} is VALID [2022-04-15 08:55:09,377 INFO L290 TraceCheckUtils]: 1: Hoare triple {49918#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);~counter~0 := 0; {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,377 INFO L290 TraceCheckUtils]: 2: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,378 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49926#(<= ~counter~0 0)} {49918#true} #108#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,378 INFO L272 TraceCheckUtils]: 4: Hoare triple {49926#(<= ~counter~0 0)} call #t~ret9 := main(); {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,378 INFO L290 TraceCheckUtils]: 5: Hoare triple {49926#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,379 INFO L272 TraceCheckUtils]: 6: Hoare triple {49926#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,379 INFO L290 TraceCheckUtils]: 7: Hoare triple {49926#(<= ~counter~0 0)} ~cond := #in~cond; {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,379 INFO L290 TraceCheckUtils]: 8: Hoare triple {49926#(<= ~counter~0 0)} assume !(0 == ~cond); {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,379 INFO L290 TraceCheckUtils]: 9: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,380 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49926#(<= ~counter~0 0)} {49926#(<= ~counter~0 0)} #94#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,380 INFO L272 TraceCheckUtils]: 11: Hoare triple {49926#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,380 INFO L290 TraceCheckUtils]: 12: Hoare triple {49926#(<= ~counter~0 0)} ~cond := #in~cond; {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,381 INFO L290 TraceCheckUtils]: 13: Hoare triple {49926#(<= ~counter~0 0)} assume !(0 == ~cond); {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,381 INFO L290 TraceCheckUtils]: 14: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,381 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49926#(<= ~counter~0 0)} {49926#(<= ~counter~0 0)} #96#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,381 INFO L290 TraceCheckUtils]: 16: Hoare triple {49926#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {49926#(<= ~counter~0 0)} is VALID [2022-04-15 08:55:09,382 INFO L290 TraceCheckUtils]: 17: Hoare triple {49926#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49975#(<= ~counter~0 1)} is VALID [2022-04-15 08:55:09,383 INFO L290 TraceCheckUtils]: 18: Hoare triple {49975#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {49975#(<= ~counter~0 1)} is VALID [2022-04-15 08:55:09,383 INFO L290 TraceCheckUtils]: 19: Hoare triple {49975#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {49975#(<= ~counter~0 1)} is VALID [2022-04-15 08:55:09,384 INFO L290 TraceCheckUtils]: 20: Hoare triple {49975#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49985#(<= ~counter~0 2)} is VALID [2022-04-15 08:55:09,384 INFO L290 TraceCheckUtils]: 21: Hoare triple {49985#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {49985#(<= ~counter~0 2)} is VALID [2022-04-15 08:55:09,384 INFO L290 TraceCheckUtils]: 22: Hoare triple {49985#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {49985#(<= ~counter~0 2)} is VALID [2022-04-15 08:55:09,384 INFO L290 TraceCheckUtils]: 23: Hoare triple {49985#(<= ~counter~0 2)} ~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; {49985#(<= ~counter~0 2)} is VALID [2022-04-15 08:55:09,385 INFO L290 TraceCheckUtils]: 24: Hoare triple {49985#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49998#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:09,385 INFO L290 TraceCheckUtils]: 25: Hoare triple {49998#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {49998#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:09,385 INFO L290 TraceCheckUtils]: 26: Hoare triple {49998#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {49998#(<= ~counter~0 3)} is VALID [2022-04-15 08:55:09,386 INFO L290 TraceCheckUtils]: 27: Hoare triple {49998#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50008#(<= ~counter~0 4)} is VALID [2022-04-15 08:55:09,386 INFO L290 TraceCheckUtils]: 28: Hoare triple {50008#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {50008#(<= ~counter~0 4)} is VALID [2022-04-15 08:55:09,387 INFO L290 TraceCheckUtils]: 29: Hoare triple {50008#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50008#(<= ~counter~0 4)} is VALID [2022-04-15 08:55:09,387 INFO L290 TraceCheckUtils]: 30: Hoare triple {50008#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,387 INFO L290 TraceCheckUtils]: 31: Hoare triple {50018#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,388 INFO L272 TraceCheckUtils]: 32: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,388 INFO L290 TraceCheckUtils]: 33: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,388 INFO L290 TraceCheckUtils]: 34: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,389 INFO L290 TraceCheckUtils]: 35: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,389 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #98#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,390 INFO L272 TraceCheckUtils]: 37: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,390 INFO L290 TraceCheckUtils]: 38: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,390 INFO L290 TraceCheckUtils]: 39: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,390 INFO L290 TraceCheckUtils]: 40: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,391 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #100#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,391 INFO L272 TraceCheckUtils]: 42: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,392 INFO L290 TraceCheckUtils]: 43: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,392 INFO L290 TraceCheckUtils]: 44: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,392 INFO L290 TraceCheckUtils]: 45: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,393 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #102#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,393 INFO L272 TraceCheckUtils]: 47: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,393 INFO L290 TraceCheckUtils]: 48: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,393 INFO L290 TraceCheckUtils]: 49: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,394 INFO L290 TraceCheckUtils]: 50: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,394 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #104#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,394 INFO L290 TraceCheckUtils]: 52: Hoare triple {50018#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,395 INFO L290 TraceCheckUtils]: 53: Hoare triple {50018#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {50018#(<= ~counter~0 5)} is VALID [2022-04-15 08:55:09,395 INFO L290 TraceCheckUtils]: 54: Hoare triple {50018#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50091#(<= ~counter~0 6)} is VALID [2022-04-15 08:55:09,396 INFO L290 TraceCheckUtils]: 55: Hoare triple {50091#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {50091#(<= ~counter~0 6)} is VALID [2022-04-15 08:55:09,396 INFO L290 TraceCheckUtils]: 56: Hoare triple {50091#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {50091#(<= ~counter~0 6)} is VALID [2022-04-15 08:55:09,396 INFO L290 TraceCheckUtils]: 57: Hoare triple {50091#(<= ~counter~0 6)} ~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; {50091#(<= ~counter~0 6)} is VALID [2022-04-15 08:55:09,397 INFO L290 TraceCheckUtils]: 58: Hoare triple {50091#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50104#(<= ~counter~0 7)} is VALID [2022-04-15 08:55:09,397 INFO L290 TraceCheckUtils]: 59: Hoare triple {50104#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {50104#(<= ~counter~0 7)} is VALID [2022-04-15 08:55:09,397 INFO L290 TraceCheckUtils]: 60: Hoare triple {50104#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50104#(<= ~counter~0 7)} is VALID [2022-04-15 08:55:09,398 INFO L290 TraceCheckUtils]: 61: Hoare triple {50104#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50114#(<= |main_#t~post7| 7)} is VALID [2022-04-15 08:55:09,398 INFO L290 TraceCheckUtils]: 62: Hoare triple {50114#(<= |main_#t~post7| 7)} assume !(#t~post7 < 20);havoc #t~post7; {49919#false} is VALID [2022-04-15 08:55:09,398 INFO L290 TraceCheckUtils]: 63: Hoare triple {49919#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; {49919#false} is VALID [2022-04-15 08:55:09,398 INFO L290 TraceCheckUtils]: 64: Hoare triple {49919#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49919#false} is VALID [2022-04-15 08:55:09,398 INFO L290 TraceCheckUtils]: 65: Hoare triple {49919#false} assume !(#t~post6 < 20);havoc #t~post6; {49919#false} is VALID [2022-04-15 08:55:09,398 INFO L272 TraceCheckUtils]: 66: Hoare triple {49919#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)); {49919#false} is VALID [2022-04-15 08:55:09,398 INFO L290 TraceCheckUtils]: 67: Hoare triple {49919#false} ~cond := #in~cond; {49919#false} is VALID [2022-04-15 08:55:09,398 INFO L290 TraceCheckUtils]: 68: Hoare triple {49919#false} assume 0 == ~cond; {49919#false} is VALID [2022-04-15 08:55:09,398 INFO L290 TraceCheckUtils]: 69: Hoare triple {49919#false} assume !false; {49919#false} is VALID [2022-04-15 08:55:09,399 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 25 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:55:09,399 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:55:09,742 INFO L290 TraceCheckUtils]: 69: Hoare triple {49919#false} assume !false; {49919#false} is VALID [2022-04-15 08:55:09,742 INFO L290 TraceCheckUtils]: 68: Hoare triple {49919#false} assume 0 == ~cond; {49919#false} is VALID [2022-04-15 08:55:09,742 INFO L290 TraceCheckUtils]: 67: Hoare triple {49919#false} ~cond := #in~cond; {49919#false} is VALID [2022-04-15 08:55:09,742 INFO L272 TraceCheckUtils]: 66: Hoare triple {49919#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)); {49919#false} is VALID [2022-04-15 08:55:09,742 INFO L290 TraceCheckUtils]: 65: Hoare triple {49919#false} assume !(#t~post6 < 20);havoc #t~post6; {49919#false} is VALID [2022-04-15 08:55:09,742 INFO L290 TraceCheckUtils]: 64: Hoare triple {49919#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49919#false} is VALID [2022-04-15 08:55:09,742 INFO L290 TraceCheckUtils]: 63: Hoare triple {49919#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; {49919#false} is VALID [2022-04-15 08:55:09,742 INFO L290 TraceCheckUtils]: 62: Hoare triple {50160#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {49919#false} is VALID [2022-04-15 08:55:09,743 INFO L290 TraceCheckUtils]: 61: Hoare triple {50164#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50160#(< |main_#t~post7| 20)} is VALID [2022-04-15 08:55:09,743 INFO L290 TraceCheckUtils]: 60: Hoare triple {50164#(< ~counter~0 20)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50164#(< ~counter~0 20)} is VALID [2022-04-15 08:55:09,743 INFO L290 TraceCheckUtils]: 59: Hoare triple {50164#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {50164#(< ~counter~0 20)} is VALID [2022-04-15 08:55:09,744 INFO L290 TraceCheckUtils]: 58: Hoare triple {50174#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50164#(< ~counter~0 20)} is VALID [2022-04-15 08:55:09,745 INFO L290 TraceCheckUtils]: 57: Hoare triple {50174#(< ~counter~0 19)} ~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; {50174#(< ~counter~0 19)} is VALID [2022-04-15 08:55:09,745 INFO L290 TraceCheckUtils]: 56: Hoare triple {50174#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {50174#(< ~counter~0 19)} is VALID [2022-04-15 08:55:09,745 INFO L290 TraceCheckUtils]: 55: Hoare triple {50174#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {50174#(< ~counter~0 19)} is VALID [2022-04-15 08:55:09,746 INFO L290 TraceCheckUtils]: 54: Hoare triple {50187#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50174#(< ~counter~0 19)} is VALID [2022-04-15 08:55:09,746 INFO L290 TraceCheckUtils]: 53: Hoare triple {50187#(< ~counter~0 18)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {50187#(< ~counter~0 18)} is VALID [2022-04-15 08:55:09,746 INFO L290 TraceCheckUtils]: 52: Hoare triple {50187#(< ~counter~0 18)} assume !(~c~0 >= 2 * ~v~0); {50187#(< ~counter~0 18)} is VALID [2022-04-15 08:55:09,747 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {49918#true} {50187#(< ~counter~0 18)} #104#return; {50187#(< ~counter~0 18)} is VALID [2022-04-15 08:55:09,747 INFO L290 TraceCheckUtils]: 50: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-15 08:55:09,747 INFO L290 TraceCheckUtils]: 49: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-15 08:55:09,747 INFO L290 TraceCheckUtils]: 48: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-15 08:55:09,747 INFO L272 TraceCheckUtils]: 47: Hoare triple {50187#(< ~counter~0 18)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {49918#true} is VALID [2022-04-15 08:55:09,747 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {49918#true} {50187#(< ~counter~0 18)} #102#return; {50187#(< ~counter~0 18)} is VALID [2022-04-15 08:55:09,747 INFO L290 TraceCheckUtils]: 45: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-15 08:55:09,747 INFO L290 TraceCheckUtils]: 44: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-15 08:55:09,748 INFO L290 TraceCheckUtils]: 43: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-15 08:55:09,748 INFO L272 TraceCheckUtils]: 42: Hoare triple {50187#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49918#true} is VALID [2022-04-15 08:55:09,748 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {49918#true} {50187#(< ~counter~0 18)} #100#return; {50187#(< ~counter~0 18)} is VALID [2022-04-15 08:55:09,748 INFO L290 TraceCheckUtils]: 40: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-15 08:55:09,748 INFO L290 TraceCheckUtils]: 39: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-15 08:55:09,748 INFO L290 TraceCheckUtils]: 38: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-15 08:55:09,748 INFO L272 TraceCheckUtils]: 37: Hoare triple {50187#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49918#true} is VALID [2022-04-15 08:55:09,749 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {49918#true} {50187#(< ~counter~0 18)} #98#return; {50187#(< ~counter~0 18)} is VALID [2022-04-15 08:55:09,749 INFO L290 TraceCheckUtils]: 35: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-15 08:55:09,749 INFO L290 TraceCheckUtils]: 34: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-15 08:55:09,749 INFO L290 TraceCheckUtils]: 33: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-15 08:55:09,749 INFO L272 TraceCheckUtils]: 32: Hoare triple {50187#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49918#true} is VALID [2022-04-15 08:55:09,749 INFO L290 TraceCheckUtils]: 31: Hoare triple {50187#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {50187#(< ~counter~0 18)} is VALID [2022-04-15 08:55:09,750 INFO L290 TraceCheckUtils]: 30: Hoare triple {50260#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50187#(< ~counter~0 18)} is VALID [2022-04-15 08:55:09,750 INFO L290 TraceCheckUtils]: 29: Hoare triple {50260#(< ~counter~0 17)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50260#(< ~counter~0 17)} is VALID [2022-04-15 08:55:09,751 INFO L290 TraceCheckUtils]: 28: Hoare triple {50260#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {50260#(< ~counter~0 17)} is VALID [2022-04-15 08:55:09,751 INFO L290 TraceCheckUtils]: 27: Hoare triple {50270#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50260#(< ~counter~0 17)} is VALID [2022-04-15 08:55:09,752 INFO L290 TraceCheckUtils]: 26: Hoare triple {50270#(< ~counter~0 16)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50270#(< ~counter~0 16)} is VALID [2022-04-15 08:55:09,752 INFO L290 TraceCheckUtils]: 25: Hoare triple {50270#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {50270#(< ~counter~0 16)} is VALID [2022-04-15 08:55:09,752 INFO L290 TraceCheckUtils]: 24: Hoare triple {50280#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50270#(< ~counter~0 16)} is VALID [2022-04-15 08:55:09,753 INFO L290 TraceCheckUtils]: 23: Hoare triple {50280#(< ~counter~0 15)} ~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; {50280#(< ~counter~0 15)} is VALID [2022-04-15 08:55:09,753 INFO L290 TraceCheckUtils]: 22: Hoare triple {50280#(< ~counter~0 15)} assume !(~c~0 >= ~b~0); {50280#(< ~counter~0 15)} is VALID [2022-04-15 08:55:09,753 INFO L290 TraceCheckUtils]: 21: Hoare triple {50280#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {50280#(< ~counter~0 15)} is VALID [2022-04-15 08:55:09,754 INFO L290 TraceCheckUtils]: 20: Hoare triple {50293#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50280#(< ~counter~0 15)} is VALID [2022-04-15 08:55:09,754 INFO L290 TraceCheckUtils]: 19: Hoare triple {50293#(< ~counter~0 14)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50293#(< ~counter~0 14)} is VALID [2022-04-15 08:55:09,754 INFO L290 TraceCheckUtils]: 18: Hoare triple {50293#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {50293#(< ~counter~0 14)} is VALID [2022-04-15 08:55:09,755 INFO L290 TraceCheckUtils]: 17: Hoare triple {50303#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50293#(< ~counter~0 14)} is VALID [2022-04-15 08:55:09,755 INFO L290 TraceCheckUtils]: 16: Hoare triple {50303#(< ~counter~0 13)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {50303#(< ~counter~0 13)} is VALID [2022-04-15 08:55:09,756 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49918#true} {50303#(< ~counter~0 13)} #96#return; {50303#(< ~counter~0 13)} is VALID [2022-04-15 08:55:09,756 INFO L290 TraceCheckUtils]: 14: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-15 08:55:09,756 INFO L290 TraceCheckUtils]: 13: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-15 08:55:09,756 INFO L290 TraceCheckUtils]: 12: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-15 08:55:09,756 INFO L272 TraceCheckUtils]: 11: Hoare triple {50303#(< ~counter~0 13)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49918#true} is VALID [2022-04-15 08:55:09,756 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49918#true} {50303#(< ~counter~0 13)} #94#return; {50303#(< ~counter~0 13)} is VALID [2022-04-15 08:55:09,756 INFO L290 TraceCheckUtils]: 9: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-15 08:55:09,756 INFO L290 TraceCheckUtils]: 8: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-15 08:55:09,756 INFO L290 TraceCheckUtils]: 7: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-15 08:55:09,757 INFO L272 TraceCheckUtils]: 6: Hoare triple {50303#(< ~counter~0 13)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49918#true} is VALID [2022-04-15 08:55:09,757 INFO L290 TraceCheckUtils]: 5: Hoare triple {50303#(< ~counter~0 13)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {50303#(< ~counter~0 13)} is VALID [2022-04-15 08:55:09,757 INFO L272 TraceCheckUtils]: 4: Hoare triple {50303#(< ~counter~0 13)} call #t~ret9 := main(); {50303#(< ~counter~0 13)} is VALID [2022-04-15 08:55:09,757 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50303#(< ~counter~0 13)} {49918#true} #108#return; {50303#(< ~counter~0 13)} is VALID [2022-04-15 08:55:09,758 INFO L290 TraceCheckUtils]: 2: Hoare triple {50303#(< ~counter~0 13)} assume true; {50303#(< ~counter~0 13)} is VALID [2022-04-15 08:55:09,758 INFO L290 TraceCheckUtils]: 1: Hoare triple {49918#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);~counter~0 := 0; {50303#(< ~counter~0 13)} is VALID [2022-04-15 08:55:09,758 INFO L272 TraceCheckUtils]: 0: Hoare triple {49918#true} call ULTIMATE.init(); {49918#true} is VALID [2022-04-15 08:55:09,758 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 25 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:55:09,758 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:55:09,759 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2081652740] [2022-04-15 08:55:09,759 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:55:09,759 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1081610870] [2022-04-15 08:55:09,759 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1081610870] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:55:09,759 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:55:09,759 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-15 08:55:09,759 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:55:09,759 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1971310845] [2022-04-15 08:55:09,759 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1971310845] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:55:09,759 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:55:09,759 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 08:55:09,759 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [611402152] [2022-04-15 08:55:09,759 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:55:09,760 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 70 [2022-04-15 08:55:09,760 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:55:09,760 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:55:09,800 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-15 08:55:09,800 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 08:55:09,800 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:55:09,800 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 08:55:09,800 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-15 08:55:09,800 INFO L87 Difference]: Start difference. First operand 575 states and 786 transitions. Second operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:55:11,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:11,865 INFO L93 Difference]: Finished difference Result 918 states and 1274 transitions. [2022-04-15 08:55:11,865 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-15 08:55:11,865 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 70 [2022-04-15 08:55:11,865 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:55:11,865 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:55:11,869 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 210 transitions. [2022-04-15 08:55:11,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:55:11,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 210 transitions. [2022-04-15 08:55:11,870 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 210 transitions. [2022-04-15 08:55:12,016 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 210 edges. 210 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:55:12,036 INFO L225 Difference]: With dead ends: 918 [2022-04-15 08:55:12,036 INFO L226 Difference]: Without dead ends: 688 [2022-04-15 08:55:12,037 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 144 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=244, Invalid=356, Unknown=0, NotChecked=0, Total=600 [2022-04-15 08:55:12,037 INFO L913 BasicCegarLoop]: 64 mSDtfsCounter, 120 mSDsluCounter, 237 mSDsCounter, 0 mSdLazyCounter, 145 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 120 SdHoareTripleChecker+Valid, 301 SdHoareTripleChecker+Invalid, 190 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 145 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 08:55:12,037 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [120 Valid, 301 Invalid, 190 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 145 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 08:55:12,037 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 688 states. [2022-04-15 08:55:13,518 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 688 to 658. [2022-04-15 08:55:13,518 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:55:13,519 INFO L82 GeneralOperation]: Start isEquivalent. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-15 08:55:13,520 INFO L74 IsIncluded]: Start isIncluded. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-15 08:55:13,520 INFO L87 Difference]: Start difference. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-15 08:55:13,535 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:13,535 INFO L93 Difference]: Finished difference Result 688 states and 910 transitions. [2022-04-15 08:55:13,535 INFO L276 IsEmpty]: Start isEmpty. Operand 688 states and 910 transitions. [2022-04-15 08:55:13,536 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:55:13,536 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:55:13,537 INFO L74 IsIncluded]: Start isIncluded. First operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 688 states. [2022-04-15 08:55:13,537 INFO L87 Difference]: Start difference. First operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 688 states. [2022-04-15 08:55:13,553 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:13,553 INFO L93 Difference]: Finished difference Result 688 states and 910 transitions. [2022-04-15 08:55:13,553 INFO L276 IsEmpty]: Start isEmpty. Operand 688 states and 910 transitions. [2022-04-15 08:55:13,554 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:55:13,554 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:55:13,554 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:55:13,554 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:55:13,555 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-15 08:55:13,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 658 states to 658 states and 880 transitions. [2022-04-15 08:55:13,575 INFO L78 Accepts]: Start accepts. Automaton has 658 states and 880 transitions. Word has length 70 [2022-04-15 08:55:13,575 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:55:13,575 INFO L478 AbstractCegarLoop]: Abstraction has 658 states and 880 transitions. [2022-04-15 08:55:13,575 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:55:13,575 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 658 states and 880 transitions. [2022-04-15 08:55:14,955 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 880 edges. 880 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:55:14,955 INFO L276 IsEmpty]: Start isEmpty. Operand 658 states and 880 transitions. [2022-04-15 08:55:14,955 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2022-04-15 08:55:14,955 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:55:14,955 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 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, 1, 1, 1, 1] [2022-04-15 08:55:14,972 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Forceful destruction successful, exit code 0 [2022-04-15 08:55:15,156 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-04-15 08:55:15,156 INFO L403 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:55:15,156 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:55:15,156 INFO L85 PathProgramCache]: Analyzing trace with hash -1546062343, now seen corresponding path program 1 times [2022-04-15 08:55:15,156 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:55:15,156 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1385510433] [2022-04-15 08:55:15,157 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:55:15,157 INFO L85 PathProgramCache]: Analyzing trace with hash -1546062343, now seen corresponding path program 2 times [2022-04-15 08:55:15,157 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:55:15,157 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1912580505] [2022-04-15 08:55:15,157 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:55:15,157 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:55:15,166 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:55:15,166 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1214819509] [2022-04-15 08:55:15,166 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:55:15,167 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:55:15,167 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:55:15,167 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:55:15,168 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-15 08:55:15,212 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:55:15,212 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:55:15,213 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-15 08:55:15,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:55:15,224 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:55:15,400 INFO L272 TraceCheckUtils]: 0: Hoare triple {54895#true} call ULTIMATE.init(); {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L290 TraceCheckUtils]: 1: Hoare triple {54895#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);~counter~0 := 0; {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L290 TraceCheckUtils]: 2: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54895#true} {54895#true} #108#return; {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L272 TraceCheckUtils]: 4: Hoare triple {54895#true} call #t~ret9 := main(); {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L290 TraceCheckUtils]: 5: Hoare triple {54895#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L272 TraceCheckUtils]: 6: Hoare triple {54895#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L290 TraceCheckUtils]: 7: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L290 TraceCheckUtils]: 8: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L290 TraceCheckUtils]: 9: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54895#true} {54895#true} #94#return; {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L272 TraceCheckUtils]: 11: Hoare triple {54895#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L290 TraceCheckUtils]: 12: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-15 08:55:15,401 INFO L290 TraceCheckUtils]: 13: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 14: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {54895#true} {54895#true} #96#return; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 16: Hoare triple {54895#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 17: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 18: Hoare triple {54895#true} assume !!(#t~post6 < 20);havoc #t~post6; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 19: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 20: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 21: Hoare triple {54895#true} assume !!(#t~post7 < 20);havoc #t~post7; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 22: Hoare triple {54895#true} assume !(~c~0 >= ~b~0); {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 23: Hoare triple {54895#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; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 24: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 25: Hoare triple {54895#true} assume !!(#t~post6 < 20);havoc #t~post6; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 26: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-15 08:55:15,402 INFO L290 TraceCheckUtils]: 27: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-15 08:55:15,403 INFO L290 TraceCheckUtils]: 28: Hoare triple {54895#true} assume !!(#t~post7 < 20);havoc #t~post7; {54895#true} is VALID [2022-04-15 08:55:15,403 INFO L290 TraceCheckUtils]: 29: Hoare triple {54895#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {54895#true} is VALID [2022-04-15 08:55:15,403 INFO L290 TraceCheckUtils]: 30: Hoare triple {54895#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {54895#true} is VALID [2022-04-15 08:55:15,403 INFO L290 TraceCheckUtils]: 31: Hoare triple {54895#true} assume !!(#t~post8 < 20);havoc #t~post8; {54895#true} is VALID [2022-04-15 08:55:15,403 INFO L272 TraceCheckUtils]: 32: Hoare triple {54895#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {54895#true} is VALID [2022-04-15 08:55:15,403 INFO L290 TraceCheckUtils]: 33: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-15 08:55:15,403 INFO L290 TraceCheckUtils]: 34: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-15 08:55:15,403 INFO L290 TraceCheckUtils]: 35: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:15,403 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {54895#true} {54895#true} #98#return; {54895#true} is VALID [2022-04-15 08:55:15,403 INFO L272 TraceCheckUtils]: 37: Hoare triple {54895#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {54895#true} is VALID [2022-04-15 08:55:15,406 INFO L290 TraceCheckUtils]: 38: Hoare triple {54895#true} ~cond := #in~cond; {55014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:55:15,406 INFO L290 TraceCheckUtils]: 39: Hoare triple {55014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:55:15,406 INFO L290 TraceCheckUtils]: 40: Hoare triple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:55:15,407 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} {54895#true} #100#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:15,407 INFO L272 TraceCheckUtils]: 42: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-15 08:55:15,407 INFO L290 TraceCheckUtils]: 43: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-15 08:55:15,407 INFO L290 TraceCheckUtils]: 44: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-15 08:55:15,407 INFO L290 TraceCheckUtils]: 45: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:15,408 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:15,408 INFO L272 TraceCheckUtils]: 47: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-15 08:55:15,408 INFO L290 TraceCheckUtils]: 48: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-15 08:55:15,408 INFO L290 TraceCheckUtils]: 49: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-15 08:55:15,408 INFO L290 TraceCheckUtils]: 50: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:15,409 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:15,409 INFO L290 TraceCheckUtils]: 52: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:15,409 INFO L290 TraceCheckUtils]: 53: Hoare triple {55025#(= 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; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:15,410 INFO L290 TraceCheckUtils]: 54: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:15,410 INFO L290 TraceCheckUtils]: 55: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:15,410 INFO L290 TraceCheckUtils]: 56: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:15,411 INFO L290 TraceCheckUtils]: 57: Hoare triple {55025#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:15,411 INFO L290 TraceCheckUtils]: 58: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:15,411 INFO L290 TraceCheckUtils]: 59: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:15,412 INFO L290 TraceCheckUtils]: 60: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:15,412 INFO L290 TraceCheckUtils]: 61: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:15,412 INFO L290 TraceCheckUtils]: 62: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:15,413 INFO L290 TraceCheckUtils]: 63: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:15,413 INFO L290 TraceCheckUtils]: 64: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:15,413 INFO L290 TraceCheckUtils]: 65: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:15,414 INFO L272 TraceCheckUtils]: 66: Hoare triple {55074#(= 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)); {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:55:15,414 INFO L290 TraceCheckUtils]: 67: Hoare triple {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {55106#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:55:15,414 INFO L290 TraceCheckUtils]: 68: Hoare triple {55106#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {54896#false} is VALID [2022-04-15 08:55:15,414 INFO L290 TraceCheckUtils]: 69: Hoare triple {54896#false} assume !false; {54896#false} is VALID [2022-04-15 08:55:15,415 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 32 proven. 10 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-15 08:55:15,415 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:55:27,790 INFO L290 TraceCheckUtils]: 69: Hoare triple {54896#false} assume !false; {54896#false} is VALID [2022-04-15 08:55:27,790 INFO L290 TraceCheckUtils]: 68: Hoare triple {55106#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {54896#false} is VALID [2022-04-15 08:55:27,791 INFO L290 TraceCheckUtils]: 67: Hoare triple {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {55106#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:55:27,791 INFO L272 TraceCheckUtils]: 66: Hoare triple {55074#(= 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)); {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:55:27,792 INFO L290 TraceCheckUtils]: 65: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:27,792 INFO L290 TraceCheckUtils]: 64: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:27,792 INFO L290 TraceCheckUtils]: 63: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:27,793 INFO L290 TraceCheckUtils]: 62: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:27,793 INFO L290 TraceCheckUtils]: 61: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:27,793 INFO L290 TraceCheckUtils]: 60: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:27,793 INFO L290 TraceCheckUtils]: 59: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:27,794 INFO L290 TraceCheckUtils]: 58: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:27,794 INFO L290 TraceCheckUtils]: 57: Hoare triple {55025#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-15 08:55:27,795 INFO L290 TraceCheckUtils]: 56: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:27,795 INFO L290 TraceCheckUtils]: 55: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:27,795 INFO L290 TraceCheckUtils]: 54: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:27,795 INFO L290 TraceCheckUtils]: 53: Hoare triple {55025#(= 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; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:27,796 INFO L290 TraceCheckUtils]: 52: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:27,796 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:27,796 INFO L290 TraceCheckUtils]: 50: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:27,796 INFO L290 TraceCheckUtils]: 49: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-15 08:55:27,797 INFO L290 TraceCheckUtils]: 48: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-15 08:55:27,797 INFO L272 TraceCheckUtils]: 47: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-15 08:55:27,797 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:27,797 INFO L290 TraceCheckUtils]: 45: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:27,797 INFO L290 TraceCheckUtils]: 44: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-15 08:55:27,797 INFO L290 TraceCheckUtils]: 43: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-15 08:55:27,797 INFO L272 TraceCheckUtils]: 42: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-15 08:55:27,798 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} {54895#true} #100#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:27,798 INFO L290 TraceCheckUtils]: 40: Hoare triple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:55:27,799 INFO L290 TraceCheckUtils]: 39: Hoare triple {55206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:55:27,799 INFO L290 TraceCheckUtils]: 38: Hoare triple {54895#true} ~cond := #in~cond; {55206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:55:27,799 INFO L272 TraceCheckUtils]: 37: Hoare triple {54895#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {54895#true} is VALID [2022-04-15 08:55:27,799 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {54895#true} {54895#true} #98#return; {54895#true} is VALID [2022-04-15 08:55:27,799 INFO L290 TraceCheckUtils]: 35: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:27,799 INFO L290 TraceCheckUtils]: 34: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-15 08:55:27,799 INFO L290 TraceCheckUtils]: 33: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-15 08:55:27,799 INFO L272 TraceCheckUtils]: 32: Hoare triple {54895#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {54895#true} is VALID [2022-04-15 08:55:27,799 INFO L290 TraceCheckUtils]: 31: Hoare triple {54895#true} assume !!(#t~post8 < 20);havoc #t~post8; {54895#true} is VALID [2022-04-15 08:55:27,799 INFO L290 TraceCheckUtils]: 30: Hoare triple {54895#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {54895#true} is VALID [2022-04-15 08:55:27,799 INFO L290 TraceCheckUtils]: 29: Hoare triple {54895#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 28: Hoare triple {54895#true} assume !!(#t~post7 < 20);havoc #t~post7; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 27: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 26: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 25: Hoare triple {54895#true} assume !!(#t~post6 < 20);havoc #t~post6; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 24: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 23: Hoare triple {54895#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; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 22: Hoare triple {54895#true} assume !(~c~0 >= ~b~0); {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 21: Hoare triple {54895#true} assume !!(#t~post7 < 20);havoc #t~post7; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 20: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 19: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 18: Hoare triple {54895#true} assume !!(#t~post6 < 20);havoc #t~post6; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 17: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 16: Hoare triple {54895#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {54895#true} {54895#true} #96#return; {54895#true} is VALID [2022-04-15 08:55:27,800 INFO L290 TraceCheckUtils]: 14: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L290 TraceCheckUtils]: 13: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L290 TraceCheckUtils]: 12: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L272 TraceCheckUtils]: 11: Hoare triple {54895#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54895#true} {54895#true} #94#return; {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L290 TraceCheckUtils]: 9: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L290 TraceCheckUtils]: 8: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L290 TraceCheckUtils]: 7: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L272 TraceCheckUtils]: 6: Hoare triple {54895#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L290 TraceCheckUtils]: 5: Hoare triple {54895#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L272 TraceCheckUtils]: 4: Hoare triple {54895#true} call #t~ret9 := main(); {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54895#true} {54895#true} #108#return; {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L290 TraceCheckUtils]: 2: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L290 TraceCheckUtils]: 1: Hoare triple {54895#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);~counter~0 := 0; {54895#true} is VALID [2022-04-15 08:55:27,801 INFO L272 TraceCheckUtils]: 0: Hoare triple {54895#true} call ULTIMATE.init(); {54895#true} is VALID [2022-04-15 08:55:27,802 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 32 proven. 10 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-15 08:55:27,802 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:55:27,802 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1912580505] [2022-04-15 08:55:27,802 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:55:27,802 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1214819509] [2022-04-15 08:55:27,802 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1214819509] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:55:27,802 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:55:27,802 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-15 08:55:27,802 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:55:27,802 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1385510433] [2022-04-15 08:55:27,802 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1385510433] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:55:27,802 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:55:27,803 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 08:55:27,803 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [477494432] [2022-04-15 08:55:27,803 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:55:27,803 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 70 [2022-04-15 08:55:27,803 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:55:27,803 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 08:55:27,840 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:55:27,841 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 08:55:27,841 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:55:27,841 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 08:55:27,841 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-15 08:55:27,841 INFO L87 Difference]: Start difference. First operand 658 states and 880 transitions. Second operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 08:55:30,021 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:30,021 INFO L93 Difference]: Finished difference Result 757 states and 1022 transitions. [2022-04-15 08:55:30,021 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 08:55:30,021 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 70 [2022-04-15 08:55:30,021 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:55:30,021 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 08:55:30,022 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 85 transitions. [2022-04-15 08:55:30,022 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 08:55:30,022 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 85 transitions. [2022-04-15 08:55:30,023 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 85 transitions. [2022-04-15 08:55:30,084 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-15 08:55:30,106 INFO L225 Difference]: With dead ends: 757 [2022-04-15 08:55:30,106 INFO L226 Difference]: Without dead ends: 755 [2022-04-15 08:55:30,107 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 132 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-15 08:55:30,107 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 30 mSDsluCounter, 174 mSDsCounter, 0 mSdLazyCounter, 122 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 212 SdHoareTripleChecker+Invalid, 133 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 122 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 08:55:30,107 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 212 Invalid, 133 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 122 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 08:55:30,108 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 755 states. [2022-04-15 08:55:31,739 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 755 to 748. [2022-04-15 08:55:31,739 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:55:31,740 INFO L82 GeneralOperation]: Start isEquivalent. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-15 08:55:31,740 INFO L74 IsIncluded]: Start isIncluded. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-15 08:55:31,741 INFO L87 Difference]: Start difference. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-15 08:55:31,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:31,758 INFO L93 Difference]: Finished difference Result 755 states and 1020 transitions. [2022-04-15 08:55:31,758 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 1020 transitions. [2022-04-15 08:55:31,759 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:55:31,759 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:55:31,759 INFO L74 IsIncluded]: Start isIncluded. First operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) Second operand 755 states. [2022-04-15 08:55:31,760 INFO L87 Difference]: Start difference. First operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) Second operand 755 states. [2022-04-15 08:55:31,777 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:55:31,777 INFO L93 Difference]: Finished difference Result 755 states and 1020 transitions. [2022-04-15 08:55:31,777 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 1020 transitions. [2022-04-15 08:55:31,778 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:55:31,778 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:55:31,778 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:55:31,778 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:55:31,779 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-15 08:55:31,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 748 states to 748 states and 1013 transitions. [2022-04-15 08:55:31,808 INFO L78 Accepts]: Start accepts. Automaton has 748 states and 1013 transitions. Word has length 70 [2022-04-15 08:55:31,808 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:55:31,808 INFO L478 AbstractCegarLoop]: Abstraction has 748 states and 1013 transitions. [2022-04-15 08:55:31,808 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-15 08:55:31,809 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 748 states and 1013 transitions. [2022-04-15 08:55:33,409 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1013 edges. 1013 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:55:33,409 INFO L276 IsEmpty]: Start isEmpty. Operand 748 states and 1013 transitions. [2022-04-15 08:55:33,409 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-15 08:55:33,409 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:55:33,410 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:55:33,426 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Forceful destruction successful, exit code 0 [2022-04-15 08:55:33,610 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-04-15 08:55:33,611 INFO L403 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:55:33,611 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:55:33,611 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 3 times [2022-04-15 08:55:33,611 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:55:33,611 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1147431620] [2022-04-15 08:55:33,611 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:55:33,611 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 4 times [2022-04-15 08:55:33,611 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:55:33,611 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1658040234] [2022-04-15 08:55:33,612 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:55:33,612 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:55:33,621 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:55:33,621 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [97390935] [2022-04-15 08:55:33,621 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:55:33,621 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:55:33,621 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:55:33,622 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:55:33,635 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-04-15 08:55:33,678 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:55:33,679 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:55:33,680 INFO L263 TraceCheckSpWp]: Trace formula consists of 202 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-15 08:55:33,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:55:33,692 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:55:34,477 INFO L272 TraceCheckUtils]: 0: Hoare triple {59850#true} call ULTIMATE.init(); {59850#true} is VALID [2022-04-15 08:55:34,477 INFO L290 TraceCheckUtils]: 1: Hoare triple {59850#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);~counter~0 := 0; {59850#true} is VALID [2022-04-15 08:55:34,477 INFO L290 TraceCheckUtils]: 2: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:55:34,477 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59850#true} {59850#true} #108#return; {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L272 TraceCheckUtils]: 4: Hoare triple {59850#true} call #t~ret9 := main(); {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L290 TraceCheckUtils]: 5: Hoare triple {59850#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L272 TraceCheckUtils]: 6: Hoare triple {59850#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L290 TraceCheckUtils]: 7: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L290 TraceCheckUtils]: 8: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L290 TraceCheckUtils]: 9: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59850#true} {59850#true} #94#return; {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L272 TraceCheckUtils]: 11: Hoare triple {59850#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L290 TraceCheckUtils]: 12: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L290 TraceCheckUtils]: 13: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L290 TraceCheckUtils]: 14: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:55:34,478 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59850#true} {59850#true} #96#return; {59850#true} is VALID [2022-04-15 08:55:34,479 INFO L290 TraceCheckUtils]: 16: Hoare triple {59850#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59903#(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-15 08:55:34,479 INFO L290 TraceCheckUtils]: 17: Hoare triple {59903#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59903#(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-15 08:55:34,479 INFO L290 TraceCheckUtils]: 18: Hoare triple {59903#(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 !!(#t~post6 < 20);havoc #t~post6; {59903#(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-15 08:55:34,480 INFO L290 TraceCheckUtils]: 19: Hoare triple {59903#(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; {59913#(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-15 08:55:34,480 INFO L290 TraceCheckUtils]: 20: Hoare triple {59913#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59913#(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-15 08:55:34,480 INFO L290 TraceCheckUtils]: 21: Hoare triple {59913#(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 !!(#t~post7 < 20);havoc #t~post7; {59913#(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-15 08:55:34,481 INFO L290 TraceCheckUtils]: 22: Hoare triple {59913#(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); {59913#(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-15 08:55:34,481 INFO L290 TraceCheckUtils]: 23: Hoare triple {59913#(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; {59926#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,482 INFO L290 TraceCheckUtils]: 24: Hoare triple {59926#(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) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59926#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,482 INFO L290 TraceCheckUtils]: 25: Hoare triple {59926#(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) (= main_~q~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {59926#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,482 INFO L290 TraceCheckUtils]: 26: Hoare triple {59926#(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) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59936#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,483 INFO L290 TraceCheckUtils]: 27: Hoare triple {59936#(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) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59936#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,483 INFO L290 TraceCheckUtils]: 28: Hoare triple {59936#(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) (= main_~q~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {59936#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,484 INFO L290 TraceCheckUtils]: 29: Hoare triple {59936#(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) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {59946#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,484 INFO L290 TraceCheckUtils]: 30: Hoare triple {59946#(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) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {59946#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,484 INFO L290 TraceCheckUtils]: 31: Hoare triple {59946#(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) (= main_~q~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {59946#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,484 INFO L272 TraceCheckUtils]: 32: Hoare triple {59946#(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) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-15 08:55:34,485 INFO L290 TraceCheckUtils]: 33: Hoare triple {59850#true} ~cond := #in~cond; {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:55:34,485 INFO L290 TraceCheckUtils]: 34: Hoare triple {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:55:34,485 INFO L290 TraceCheckUtils]: 35: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:55:34,486 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {59946#(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) (= main_~q~0 1))} #98#return; {59970#(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_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:55:34,486 INFO L272 TraceCheckUtils]: 37: Hoare triple {59970#(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_~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)); {59850#true} is VALID [2022-04-15 08:55:34,487 INFO L290 TraceCheckUtils]: 38: Hoare triple {59850#true} ~cond := #in~cond; {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:55:34,487 INFO L290 TraceCheckUtils]: 39: Hoare triple {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:55:34,487 INFO L290 TraceCheckUtils]: 40: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:55:34,488 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {59970#(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_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:55:34,488 INFO L272 TraceCheckUtils]: 42: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~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)); {59850#true} is VALID [2022-04-15 08:55:34,488 INFO L290 TraceCheckUtils]: 43: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-15 08:55:34,488 INFO L290 TraceCheckUtils]: 44: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-15 08:55:34,488 INFO L290 TraceCheckUtils]: 45: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:55:34,489 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59850#true} {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:55:34,489 INFO L272 TraceCheckUtils]: 47: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~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)); {59850#true} is VALID [2022-04-15 08:55:34,489 INFO L290 TraceCheckUtils]: 48: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-15 08:55:34,489 INFO L290 TraceCheckUtils]: 49: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-15 08:55:34,489 INFO L290 TraceCheckUtils]: 50: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:55:34,490 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59850#true} {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:55:34,490 INFO L290 TraceCheckUtils]: 52: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~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); {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:55:34,491 INFO L290 TraceCheckUtils]: 53: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~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; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,491 INFO L290 TraceCheckUtils]: 54: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,492 INFO L290 TraceCheckUtils]: 55: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,492 INFO L290 TraceCheckUtils]: 56: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} assume !(~c~0 >= ~b~0); {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-15 08:55:34,493 INFO L290 TraceCheckUtils]: 57: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~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; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-15 08:55:34,493 INFO L290 TraceCheckUtils]: 58: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-15 08:55:34,493 INFO L290 TraceCheckUtils]: 59: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post6 < 20);havoc #t~post6; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-15 08:55:34,494 INFO L290 TraceCheckUtils]: 60: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-15 08:55:34,494 INFO L290 TraceCheckUtils]: 61: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-15 08:55:34,494 INFO L290 TraceCheckUtils]: 62: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post7 < 20);havoc #t~post7; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-15 08:55:34,495 INFO L290 TraceCheckUtils]: 63: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-15 08:55:34,495 INFO L290 TraceCheckUtils]: 64: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-15 08:55:34,495 INFO L290 TraceCheckUtils]: 65: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post8 < 20);havoc #t~post8; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-15 08:55:34,496 INFO L272 TraceCheckUtils]: 66: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-15 08:55:34,496 INFO L290 TraceCheckUtils]: 67: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-15 08:55:34,496 INFO L290 TraceCheckUtils]: 68: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-15 08:55:34,496 INFO L290 TraceCheckUtils]: 69: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:55:34,496 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59850#true} {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #98#return; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-15 08:55:34,497 INFO L272 TraceCheckUtils]: 71: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:55:34,497 INFO L290 TraceCheckUtils]: 72: Hoare triple {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {60083#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:55:34,497 INFO L290 TraceCheckUtils]: 73: Hoare triple {60083#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59851#false} is VALID [2022-04-15 08:55:34,498 INFO L290 TraceCheckUtils]: 74: Hoare triple {59851#false} assume !false; {59851#false} is VALID [2022-04-15 08:55:34,498 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 8 proven. 52 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-15 08:55:34,498 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:55:57,949 INFO L290 TraceCheckUtils]: 74: Hoare triple {59851#false} assume !false; {59851#false} is VALID [2022-04-15 08:55:57,949 INFO L290 TraceCheckUtils]: 73: Hoare triple {60083#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59851#false} is VALID [2022-04-15 08:55:57,950 INFO L290 TraceCheckUtils]: 72: Hoare triple {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {60083#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:55:57,950 INFO L272 TraceCheckUtils]: 71: Hoare triple {60099#(= 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)); {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:55:57,951 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59850#true} {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:57,951 INFO L290 TraceCheckUtils]: 69: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:55:57,951 INFO L290 TraceCheckUtils]: 68: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-15 08:55:57,951 INFO L290 TraceCheckUtils]: 67: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-15 08:55:57,951 INFO L272 TraceCheckUtils]: 66: Hoare triple {60099#(= 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)); {59850#true} is VALID [2022-04-15 08:55:57,951 INFO L290 TraceCheckUtils]: 65: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:57,952 INFO L290 TraceCheckUtils]: 64: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:57,952 INFO L290 TraceCheckUtils]: 63: Hoare triple {60099#(= 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; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:57,952 INFO L290 TraceCheckUtils]: 62: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:57,953 INFO L290 TraceCheckUtils]: 61: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:57,953 INFO L290 TraceCheckUtils]: 60: Hoare triple {60099#(= 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; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:57,953 INFO L290 TraceCheckUtils]: 59: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 20);havoc #t~post6; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:57,954 INFO L290 TraceCheckUtils]: 58: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 08:55:59,955 WARN L290 TraceCheckUtils]: 57: Hoare triple {60142#(= (+ (* 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; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-15 08:55:59,956 INFO L290 TraceCheckUtils]: 56: Hoare triple {60142#(= (+ (* 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); {60142#(= (+ (* 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-15 08:55:59,956 INFO L290 TraceCheckUtils]: 55: Hoare triple {60142#(= (+ (* 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 !!(#t~post7 < 20);havoc #t~post7; {60142#(= (+ (* 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-15 08:55:59,956 INFO L290 TraceCheckUtils]: 54: Hoare triple {60142#(= (+ (* 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)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60142#(= (+ (* 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-15 08:56:00,453 INFO L290 TraceCheckUtils]: 53: Hoare triple {60155#(= (+ 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; {60142#(= (+ (* 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-15 08:56:00,454 INFO L290 TraceCheckUtils]: 52: Hoare triple {60155#(= (+ 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); {60155#(= (+ 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-15 08:56:00,454 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59850#true} {60155#(= (+ 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)))} #104#return; {60155#(= (+ 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-15 08:56:00,454 INFO L290 TraceCheckUtils]: 50: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:56:00,455 INFO L290 TraceCheckUtils]: 49: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-15 08:56:00,455 INFO L290 TraceCheckUtils]: 48: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-15 08:56:00,455 INFO L272 TraceCheckUtils]: 47: Hoare triple {60155#(= (+ 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)); {59850#true} is VALID [2022-04-15 08:56:00,455 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59850#true} {60155#(= (+ 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)))} #102#return; {60155#(= (+ 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-15 08:56:00,455 INFO L290 TraceCheckUtils]: 45: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:56:00,456 INFO L290 TraceCheckUtils]: 44: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-15 08:56:00,456 INFO L290 TraceCheckUtils]: 43: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-15 08:56:00,456 INFO L272 TraceCheckUtils]: 42: Hoare triple {60155#(= (+ 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)); {59850#true} is VALID [2022-04-15 08:56:00,456 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {60192#(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)))))} #100#return; {60155#(= (+ 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-15 08:56:00,457 INFO L290 TraceCheckUtils]: 40: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:00,457 INFO L290 TraceCheckUtils]: 39: Hoare triple {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:00,457 INFO L290 TraceCheckUtils]: 38: Hoare triple {59850#true} ~cond := #in~cond; {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:56:00,457 INFO L272 TraceCheckUtils]: 37: Hoare triple {60192#(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)); {59850#true} is VALID [2022-04-15 08:56:00,458 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {60209#(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)))))} #98#return; {60192#(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-15 08:56:00,459 INFO L290 TraceCheckUtils]: 35: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:00,459 INFO L290 TraceCheckUtils]: 34: Hoare triple {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:00,459 INFO L290 TraceCheckUtils]: 33: Hoare triple {59850#true} ~cond := #in~cond; {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:56:00,459 INFO L272 TraceCheckUtils]: 32: Hoare triple {60209#(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)); {59850#true} is VALID [2022-04-15 08:56:00,460 INFO L290 TraceCheckUtils]: 31: Hoare triple {60209#(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 !!(#t~post8 < 20);havoc #t~post8; {60209#(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-15 08:56:00,460 INFO L290 TraceCheckUtils]: 30: Hoare triple {60209#(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)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60209#(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-15 08:56:00,461 INFO L290 TraceCheckUtils]: 29: Hoare triple {60231#(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; {60209#(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-15 08:56:00,461 INFO L290 TraceCheckUtils]: 28: Hoare triple {60231#(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 !!(#t~post7 < 20);havoc #t~post7; {60231#(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-15 08:56:00,462 INFO L290 TraceCheckUtils]: 27: Hoare triple {60231#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60231#(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-15 08:56:00,463 INFO L290 TraceCheckUtils]: 26: Hoare triple {59850#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60231#(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-15 08:56:00,463 INFO L290 TraceCheckUtils]: 25: Hoare triple {59850#true} assume !!(#t~post6 < 20);havoc #t~post6; {59850#true} is VALID [2022-04-15 08:56:00,463 INFO L290 TraceCheckUtils]: 24: Hoare triple {59850#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59850#true} is VALID [2022-04-15 08:56:00,463 INFO L290 TraceCheckUtils]: 23: Hoare triple {59850#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; {59850#true} is VALID [2022-04-15 08:56:00,463 INFO L290 TraceCheckUtils]: 22: Hoare triple {59850#true} assume !(~c~0 >= ~b~0); {59850#true} is VALID [2022-04-15 08:56:00,463 INFO L290 TraceCheckUtils]: 21: Hoare triple {59850#true} assume !!(#t~post7 < 20);havoc #t~post7; {59850#true} is VALID [2022-04-15 08:56:00,463 INFO L290 TraceCheckUtils]: 20: Hoare triple {59850#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59850#true} is VALID [2022-04-15 08:56:00,463 INFO L290 TraceCheckUtils]: 19: Hoare triple {59850#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59850#true} is VALID [2022-04-15 08:56:00,463 INFO L290 TraceCheckUtils]: 18: Hoare triple {59850#true} assume !!(#t~post6 < 20);havoc #t~post6; {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L290 TraceCheckUtils]: 17: Hoare triple {59850#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L290 TraceCheckUtils]: 16: Hoare triple {59850#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59850#true} {59850#true} #96#return; {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L290 TraceCheckUtils]: 14: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L290 TraceCheckUtils]: 13: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L290 TraceCheckUtils]: 12: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L272 TraceCheckUtils]: 11: Hoare triple {59850#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59850#true} {59850#true} #94#return; {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L290 TraceCheckUtils]: 9: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L290 TraceCheckUtils]: 8: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L290 TraceCheckUtils]: 7: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L272 TraceCheckUtils]: 6: Hoare triple {59850#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L290 TraceCheckUtils]: 5: Hoare triple {59850#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L272 TraceCheckUtils]: 4: Hoare triple {59850#true} call #t~ret9 := main(); {59850#true} is VALID [2022-04-15 08:56:00,464 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59850#true} {59850#true} #108#return; {59850#true} is VALID [2022-04-15 08:56:00,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-15 08:56:00,465 INFO L290 TraceCheckUtils]: 1: Hoare triple {59850#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);~counter~0 := 0; {59850#true} is VALID [2022-04-15 08:56:00,465 INFO L272 TraceCheckUtils]: 0: Hoare triple {59850#true} call ULTIMATE.init(); {59850#true} is VALID [2022-04-15 08:56:00,465 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 27 proven. 30 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2022-04-15 08:56:00,465 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:56:00,465 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1658040234] [2022-04-15 08:56:00,465 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:56:00,465 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [97390935] [2022-04-15 08:56:00,465 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [97390935] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:56:00,465 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:56:00,466 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 12] total 22 [2022-04-15 08:56:00,466 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:56:00,466 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1147431620] [2022-04-15 08:56:00,466 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1147431620] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:56:00,466 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:56:00,466 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-15 08:56:00,466 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1090191343] [2022-04-15 08:56:00,466 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:56:00,466 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 75 [2022-04-15 08:56:00,466 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:56:00,467 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-15 08:56:00,521 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:56:00,521 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-15 08:56:00,521 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:56:00,521 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-15 08:56:00,522 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=379, Unknown=0, NotChecked=0, Total=462 [2022-04-15 08:56:00,522 INFO L87 Difference]: Start difference. First operand 748 states and 1013 transitions. Second operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-15 08:56:04,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:04,417 INFO L93 Difference]: Finished difference Result 840 states and 1136 transitions. [2022-04-15 08:56:04,418 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 08:56:04,418 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 75 [2022-04-15 08:56:04,418 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:56:04,418 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-15 08:56:04,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 172 transitions. [2022-04-15 08:56:04,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-15 08:56:04,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 172 transitions. [2022-04-15 08:56:04,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 172 transitions. [2022-04-15 08:56:04,586 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-15 08:56:04,616 INFO L225 Difference]: With dead ends: 840 [2022-04-15 08:56:04,616 INFO L226 Difference]: Without dead ends: 838 [2022-04-15 08:56:04,617 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 128 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=110, Invalid=540, Unknown=0, NotChecked=0, Total=650 [2022-04-15 08:56:04,617 INFO L913 BasicCegarLoop]: 62 mSDtfsCounter, 81 mSDsluCounter, 468 mSDsCounter, 0 mSdLazyCounter, 724 mSolverCounterSat, 44 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 100 SdHoareTripleChecker+Valid, 530 SdHoareTripleChecker+Invalid, 768 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 44 IncrementalHoareTripleChecker+Valid, 724 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-15 08:56:04,617 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [100 Valid, 530 Invalid, 768 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [44 Valid, 724 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-15 08:56:04,618 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 838 states. [2022-04-15 08:56:06,412 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 838 to 813. [2022-04-15 08:56:06,413 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:56:06,414 INFO L82 GeneralOperation]: Start isEquivalent. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-15 08:56:06,414 INFO L74 IsIncluded]: Start isIncluded. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-15 08:56:06,415 INFO L87 Difference]: Start difference. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-15 08:56:06,436 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:06,437 INFO L93 Difference]: Finished difference Result 838 states and 1134 transitions. [2022-04-15 08:56:06,437 INFO L276 IsEmpty]: Start isEmpty. Operand 838 states and 1134 transitions. [2022-04-15 08:56:06,438 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:56:06,438 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:56:06,439 INFO L74 IsIncluded]: Start isIncluded. First operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) Second operand 838 states. [2022-04-15 08:56:06,439 INFO L87 Difference]: Start difference. First operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) Second operand 838 states. [2022-04-15 08:56:06,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:06,462 INFO L93 Difference]: Finished difference Result 838 states and 1134 transitions. [2022-04-15 08:56:06,462 INFO L276 IsEmpty]: Start isEmpty. Operand 838 states and 1134 transitions. [2022-04-15 08:56:06,463 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:56:06,463 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:56:06,463 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:56:06,463 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:56:06,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-15 08:56:06,494 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 813 states to 813 states and 1106 transitions. [2022-04-15 08:56:06,494 INFO L78 Accepts]: Start accepts. Automaton has 813 states and 1106 transitions. Word has length 75 [2022-04-15 08:56:06,494 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:56:06,494 INFO L478 AbstractCegarLoop]: Abstraction has 813 states and 1106 transitions. [2022-04-15 08:56:06,495 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-15 08:56:06,495 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 813 states and 1106 transitions. [2022-04-15 08:56:08,354 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1106 edges. 1106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:56:08,354 INFO L276 IsEmpty]: Start isEmpty. Operand 813 states and 1106 transitions. [2022-04-15 08:56:08,354 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2022-04-15 08:56:08,355 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:56:08,355 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:56:08,373 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Forceful destruction successful, exit code 0 [2022-04-15 08:56:08,555 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-04-15 08:56:08,555 INFO L403 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:56:08,555 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:56:08,555 INFO L85 PathProgramCache]: Analyzing trace with hash -949871629, now seen corresponding path program 5 times [2022-04-15 08:56:08,556 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:56:08,556 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1270883649] [2022-04-15 08:56:08,556 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:56:08,556 INFO L85 PathProgramCache]: Analyzing trace with hash -949871629, now seen corresponding path program 6 times [2022-04-15 08:56:08,556 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:56:08,556 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [31267150] [2022-04-15 08:56:08,556 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:56:08,556 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:56:08,569 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:56:08,569 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1518461473] [2022-04-15 08:56:08,569 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 08:56:08,569 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:56:08,570 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:56:08,570 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:56:08,584 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-04-15 08:56:08,634 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-15 08:56:08,634 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:56:08,635 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-15 08:56:08,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:56:08,650 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:56:08,967 INFO L272 TraceCheckUtils]: 0: Hoare triple {65311#true} call ULTIMATE.init(); {65311#true} is VALID [2022-04-15 08:56:08,968 INFO L290 TraceCheckUtils]: 1: Hoare triple {65311#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);~counter~0 := 0; {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,968 INFO L290 TraceCheckUtils]: 2: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,968 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65319#(<= ~counter~0 0)} {65311#true} #108#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,969 INFO L272 TraceCheckUtils]: 4: Hoare triple {65319#(<= ~counter~0 0)} call #t~ret9 := main(); {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,969 INFO L290 TraceCheckUtils]: 5: Hoare triple {65319#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,969 INFO L272 TraceCheckUtils]: 6: Hoare triple {65319#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,970 INFO L290 TraceCheckUtils]: 7: Hoare triple {65319#(<= ~counter~0 0)} ~cond := #in~cond; {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,970 INFO L290 TraceCheckUtils]: 8: Hoare triple {65319#(<= ~counter~0 0)} assume !(0 == ~cond); {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,970 INFO L290 TraceCheckUtils]: 9: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,971 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {65319#(<= ~counter~0 0)} {65319#(<= ~counter~0 0)} #94#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,971 INFO L272 TraceCheckUtils]: 11: Hoare triple {65319#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,971 INFO L290 TraceCheckUtils]: 12: Hoare triple {65319#(<= ~counter~0 0)} ~cond := #in~cond; {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,971 INFO L290 TraceCheckUtils]: 13: Hoare triple {65319#(<= ~counter~0 0)} assume !(0 == ~cond); {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,972 INFO L290 TraceCheckUtils]: 14: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,972 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {65319#(<= ~counter~0 0)} {65319#(<= ~counter~0 0)} #96#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,972 INFO L290 TraceCheckUtils]: 16: Hoare triple {65319#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {65319#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:08,973 INFO L290 TraceCheckUtils]: 17: Hoare triple {65319#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65368#(<= ~counter~0 1)} is VALID [2022-04-15 08:56:08,974 INFO L290 TraceCheckUtils]: 18: Hoare triple {65368#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {65368#(<= ~counter~0 1)} is VALID [2022-04-15 08:56:08,974 INFO L290 TraceCheckUtils]: 19: Hoare triple {65368#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65368#(<= ~counter~0 1)} is VALID [2022-04-15 08:56:08,975 INFO L290 TraceCheckUtils]: 20: Hoare triple {65368#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65378#(<= ~counter~0 2)} is VALID [2022-04-15 08:56:08,975 INFO L290 TraceCheckUtils]: 21: Hoare triple {65378#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {65378#(<= ~counter~0 2)} is VALID [2022-04-15 08:56:08,975 INFO L290 TraceCheckUtils]: 22: Hoare triple {65378#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {65378#(<= ~counter~0 2)} is VALID [2022-04-15 08:56:08,975 INFO L290 TraceCheckUtils]: 23: Hoare triple {65378#(<= ~counter~0 2)} ~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; {65378#(<= ~counter~0 2)} is VALID [2022-04-15 08:56:08,976 INFO L290 TraceCheckUtils]: 24: Hoare triple {65378#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65391#(<= ~counter~0 3)} is VALID [2022-04-15 08:56:08,976 INFO L290 TraceCheckUtils]: 25: Hoare triple {65391#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {65391#(<= ~counter~0 3)} is VALID [2022-04-15 08:56:08,976 INFO L290 TraceCheckUtils]: 26: Hoare triple {65391#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65391#(<= ~counter~0 3)} is VALID [2022-04-15 08:56:08,977 INFO L290 TraceCheckUtils]: 27: Hoare triple {65391#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65401#(<= ~counter~0 4)} is VALID [2022-04-15 08:56:08,977 INFO L290 TraceCheckUtils]: 28: Hoare triple {65401#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {65401#(<= ~counter~0 4)} is VALID [2022-04-15 08:56:08,978 INFO L290 TraceCheckUtils]: 29: Hoare triple {65401#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65401#(<= ~counter~0 4)} is VALID [2022-04-15 08:56:08,978 INFO L290 TraceCheckUtils]: 30: Hoare triple {65401#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,978 INFO L290 TraceCheckUtils]: 31: Hoare triple {65411#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,979 INFO L272 TraceCheckUtils]: 32: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,979 INFO L290 TraceCheckUtils]: 33: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,979 INFO L290 TraceCheckUtils]: 34: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,980 INFO L290 TraceCheckUtils]: 35: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,980 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #98#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,981 INFO L272 TraceCheckUtils]: 37: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,981 INFO L290 TraceCheckUtils]: 38: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,981 INFO L290 TraceCheckUtils]: 39: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,981 INFO L290 TraceCheckUtils]: 40: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,982 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #100#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,982 INFO L272 TraceCheckUtils]: 42: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,983 INFO L290 TraceCheckUtils]: 43: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,983 INFO L290 TraceCheckUtils]: 44: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,983 INFO L290 TraceCheckUtils]: 45: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,984 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #102#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,984 INFO L272 TraceCheckUtils]: 47: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,984 INFO L290 TraceCheckUtils]: 48: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,984 INFO L290 TraceCheckUtils]: 49: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,985 INFO L290 TraceCheckUtils]: 50: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,985 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #104#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,985 INFO L290 TraceCheckUtils]: 52: Hoare triple {65411#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,986 INFO L290 TraceCheckUtils]: 53: Hoare triple {65411#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65411#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:08,986 INFO L290 TraceCheckUtils]: 54: Hoare triple {65411#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65484#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:08,986 INFO L290 TraceCheckUtils]: 55: Hoare triple {65484#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {65484#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:08,987 INFO L290 TraceCheckUtils]: 56: Hoare triple {65484#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {65484#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:08,987 INFO L290 TraceCheckUtils]: 57: Hoare triple {65484#(<= ~counter~0 6)} ~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; {65484#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:08,988 INFO L290 TraceCheckUtils]: 58: Hoare triple {65484#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65497#(<= ~counter~0 7)} is VALID [2022-04-15 08:56:08,988 INFO L290 TraceCheckUtils]: 59: Hoare triple {65497#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {65497#(<= ~counter~0 7)} is VALID [2022-04-15 08:56:08,988 INFO L290 TraceCheckUtils]: 60: Hoare triple {65497#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65497#(<= ~counter~0 7)} is VALID [2022-04-15 08:56:08,989 INFO L290 TraceCheckUtils]: 61: Hoare triple {65497#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65507#(<= ~counter~0 8)} is VALID [2022-04-15 08:56:08,989 INFO L290 TraceCheckUtils]: 62: Hoare triple {65507#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {65507#(<= ~counter~0 8)} is VALID [2022-04-15 08:56:08,989 INFO L290 TraceCheckUtils]: 63: Hoare triple {65507#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65507#(<= ~counter~0 8)} is VALID [2022-04-15 08:56:08,990 INFO L290 TraceCheckUtils]: 64: Hoare triple {65507#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65517#(<= |main_#t~post8| 8)} is VALID [2022-04-15 08:56:08,990 INFO L290 TraceCheckUtils]: 65: Hoare triple {65517#(<= |main_#t~post8| 8)} assume !(#t~post8 < 20);havoc #t~post8; {65312#false} is VALID [2022-04-15 08:56:08,990 INFO L290 TraceCheckUtils]: 66: Hoare triple {65312#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65312#false} is VALID [2022-04-15 08:56:08,990 INFO L290 TraceCheckUtils]: 67: Hoare triple {65312#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65312#false} is VALID [2022-04-15 08:56:08,990 INFO L290 TraceCheckUtils]: 68: Hoare triple {65312#false} assume !(#t~post7 < 20);havoc #t~post7; {65312#false} is VALID [2022-04-15 08:56:08,990 INFO L290 TraceCheckUtils]: 69: Hoare triple {65312#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; {65312#false} is VALID [2022-04-15 08:56:08,990 INFO L290 TraceCheckUtils]: 70: Hoare triple {65312#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65312#false} is VALID [2022-04-15 08:56:08,990 INFO L290 TraceCheckUtils]: 71: Hoare triple {65312#false} assume !(#t~post6 < 20);havoc #t~post6; {65312#false} is VALID [2022-04-15 08:56:08,990 INFO L272 TraceCheckUtils]: 72: Hoare triple {65312#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)); {65312#false} is VALID [2022-04-15 08:56:08,990 INFO L290 TraceCheckUtils]: 73: Hoare triple {65312#false} ~cond := #in~cond; {65312#false} is VALID [2022-04-15 08:56:08,990 INFO L290 TraceCheckUtils]: 74: Hoare triple {65312#false} assume 0 == ~cond; {65312#false} is VALID [2022-04-15 08:56:08,991 INFO L290 TraceCheckUtils]: 75: Hoare triple {65312#false} assume !false; {65312#false} is VALID [2022-04-15 08:56:08,991 INFO L134 CoverageAnalysis]: Checked inductivity of 83 backedges. 25 proven. 30 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:56:08,991 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:56:09,371 INFO L290 TraceCheckUtils]: 75: Hoare triple {65312#false} assume !false; {65312#false} is VALID [2022-04-15 08:56:09,371 INFO L290 TraceCheckUtils]: 74: Hoare triple {65312#false} assume 0 == ~cond; {65312#false} is VALID [2022-04-15 08:56:09,371 INFO L290 TraceCheckUtils]: 73: Hoare triple {65312#false} ~cond := #in~cond; {65312#false} is VALID [2022-04-15 08:56:09,371 INFO L272 TraceCheckUtils]: 72: Hoare triple {65312#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)); {65312#false} is VALID [2022-04-15 08:56:09,371 INFO L290 TraceCheckUtils]: 71: Hoare triple {65312#false} assume !(#t~post6 < 20);havoc #t~post6; {65312#false} is VALID [2022-04-15 08:56:09,371 INFO L290 TraceCheckUtils]: 70: Hoare triple {65312#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65312#false} is VALID [2022-04-15 08:56:09,372 INFO L290 TraceCheckUtils]: 69: Hoare triple {65312#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; {65312#false} is VALID [2022-04-15 08:56:09,372 INFO L290 TraceCheckUtils]: 68: Hoare triple {65312#false} assume !(#t~post7 < 20);havoc #t~post7; {65312#false} is VALID [2022-04-15 08:56:09,372 INFO L290 TraceCheckUtils]: 67: Hoare triple {65312#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65312#false} is VALID [2022-04-15 08:56:09,372 INFO L290 TraceCheckUtils]: 66: Hoare triple {65312#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65312#false} is VALID [2022-04-15 08:56:09,372 INFO L290 TraceCheckUtils]: 65: Hoare triple {65581#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {65312#false} is VALID [2022-04-15 08:56:09,372 INFO L290 TraceCheckUtils]: 64: Hoare triple {65585#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65581#(< |main_#t~post8| 20)} is VALID [2022-04-15 08:56:09,373 INFO L290 TraceCheckUtils]: 63: Hoare triple {65585#(< ~counter~0 20)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65585#(< ~counter~0 20)} is VALID [2022-04-15 08:56:09,373 INFO L290 TraceCheckUtils]: 62: Hoare triple {65585#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {65585#(< ~counter~0 20)} is VALID [2022-04-15 08:56:09,374 INFO L290 TraceCheckUtils]: 61: Hoare triple {65595#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65585#(< ~counter~0 20)} is VALID [2022-04-15 08:56:09,374 INFO L290 TraceCheckUtils]: 60: Hoare triple {65595#(< ~counter~0 19)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65595#(< ~counter~0 19)} is VALID [2022-04-15 08:56:09,375 INFO L290 TraceCheckUtils]: 59: Hoare triple {65595#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {65595#(< ~counter~0 19)} is VALID [2022-04-15 08:56:09,375 INFO L290 TraceCheckUtils]: 58: Hoare triple {65605#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65595#(< ~counter~0 19)} is VALID [2022-04-15 08:56:09,375 INFO L290 TraceCheckUtils]: 57: Hoare triple {65605#(< ~counter~0 18)} ~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; {65605#(< ~counter~0 18)} is VALID [2022-04-15 08:56:09,376 INFO L290 TraceCheckUtils]: 56: Hoare triple {65605#(< ~counter~0 18)} assume !(~c~0 >= ~b~0); {65605#(< ~counter~0 18)} is VALID [2022-04-15 08:56:09,376 INFO L290 TraceCheckUtils]: 55: Hoare triple {65605#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {65605#(< ~counter~0 18)} is VALID [2022-04-15 08:56:09,377 INFO L290 TraceCheckUtils]: 54: Hoare triple {65618#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65605#(< ~counter~0 18)} is VALID [2022-04-15 08:56:09,377 INFO L290 TraceCheckUtils]: 53: Hoare triple {65618#(< ~counter~0 17)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65618#(< ~counter~0 17)} is VALID [2022-04-15 08:56:09,377 INFO L290 TraceCheckUtils]: 52: Hoare triple {65618#(< ~counter~0 17)} assume !(~c~0 >= 2 * ~v~0); {65618#(< ~counter~0 17)} is VALID [2022-04-15 08:56:09,378 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {65311#true} {65618#(< ~counter~0 17)} #104#return; {65618#(< ~counter~0 17)} is VALID [2022-04-15 08:56:09,378 INFO L290 TraceCheckUtils]: 50: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-15 08:56:09,378 INFO L290 TraceCheckUtils]: 49: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-15 08:56:09,378 INFO L290 TraceCheckUtils]: 48: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-15 08:56:09,378 INFO L272 TraceCheckUtils]: 47: Hoare triple {65618#(< ~counter~0 17)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {65311#true} is VALID [2022-04-15 08:56:09,378 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {65311#true} {65618#(< ~counter~0 17)} #102#return; {65618#(< ~counter~0 17)} is VALID [2022-04-15 08:56:09,378 INFO L290 TraceCheckUtils]: 45: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-15 08:56:09,378 INFO L290 TraceCheckUtils]: 44: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-15 08:56:09,379 INFO L290 TraceCheckUtils]: 43: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-15 08:56:09,379 INFO L272 TraceCheckUtils]: 42: Hoare triple {65618#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {65311#true} is VALID [2022-04-15 08:56:09,379 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {65311#true} {65618#(< ~counter~0 17)} #100#return; {65618#(< ~counter~0 17)} is VALID [2022-04-15 08:56:09,379 INFO L290 TraceCheckUtils]: 40: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-15 08:56:09,379 INFO L290 TraceCheckUtils]: 39: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-15 08:56:09,379 INFO L290 TraceCheckUtils]: 38: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-15 08:56:09,379 INFO L272 TraceCheckUtils]: 37: Hoare triple {65618#(< ~counter~0 17)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {65311#true} is VALID [2022-04-15 08:56:09,380 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {65311#true} {65618#(< ~counter~0 17)} #98#return; {65618#(< ~counter~0 17)} is VALID [2022-04-15 08:56:09,380 INFO L290 TraceCheckUtils]: 35: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-15 08:56:09,380 INFO L290 TraceCheckUtils]: 34: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-15 08:56:09,380 INFO L290 TraceCheckUtils]: 33: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-15 08:56:09,380 INFO L272 TraceCheckUtils]: 32: Hoare triple {65618#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {65311#true} is VALID [2022-04-15 08:56:09,380 INFO L290 TraceCheckUtils]: 31: Hoare triple {65618#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {65618#(< ~counter~0 17)} is VALID [2022-04-15 08:56:09,381 INFO L290 TraceCheckUtils]: 30: Hoare triple {65691#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65618#(< ~counter~0 17)} is VALID [2022-04-15 08:56:09,381 INFO L290 TraceCheckUtils]: 29: Hoare triple {65691#(< ~counter~0 16)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65691#(< ~counter~0 16)} is VALID [2022-04-15 08:56:09,382 INFO L290 TraceCheckUtils]: 28: Hoare triple {65691#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {65691#(< ~counter~0 16)} is VALID [2022-04-15 08:56:09,382 INFO L290 TraceCheckUtils]: 27: Hoare triple {65701#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65691#(< ~counter~0 16)} is VALID [2022-04-15 08:56:09,382 INFO L290 TraceCheckUtils]: 26: Hoare triple {65701#(< ~counter~0 15)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65701#(< ~counter~0 15)} is VALID [2022-04-15 08:56:09,383 INFO L290 TraceCheckUtils]: 25: Hoare triple {65701#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {65701#(< ~counter~0 15)} is VALID [2022-04-15 08:56:09,383 INFO L290 TraceCheckUtils]: 24: Hoare triple {65711#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65701#(< ~counter~0 15)} is VALID [2022-04-15 08:56:09,384 INFO L290 TraceCheckUtils]: 23: Hoare triple {65711#(< ~counter~0 14)} ~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; {65711#(< ~counter~0 14)} is VALID [2022-04-15 08:56:09,384 INFO L290 TraceCheckUtils]: 22: Hoare triple {65711#(< ~counter~0 14)} assume !(~c~0 >= ~b~0); {65711#(< ~counter~0 14)} is VALID [2022-04-15 08:56:09,384 INFO L290 TraceCheckUtils]: 21: Hoare triple {65711#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {65711#(< ~counter~0 14)} is VALID [2022-04-15 08:56:09,385 INFO L290 TraceCheckUtils]: 20: Hoare triple {65724#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65711#(< ~counter~0 14)} is VALID [2022-04-15 08:56:09,385 INFO L290 TraceCheckUtils]: 19: Hoare triple {65724#(< ~counter~0 13)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65724#(< ~counter~0 13)} is VALID [2022-04-15 08:56:09,385 INFO L290 TraceCheckUtils]: 18: Hoare triple {65724#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {65724#(< ~counter~0 13)} is VALID [2022-04-15 08:56:09,386 INFO L290 TraceCheckUtils]: 17: Hoare triple {65734#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65724#(< ~counter~0 13)} is VALID [2022-04-15 08:56:09,386 INFO L290 TraceCheckUtils]: 16: Hoare triple {65734#(< ~counter~0 12)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {65734#(< ~counter~0 12)} is VALID [2022-04-15 08:56:09,386 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {65311#true} {65734#(< ~counter~0 12)} #96#return; {65734#(< ~counter~0 12)} is VALID [2022-04-15 08:56:09,387 INFO L290 TraceCheckUtils]: 14: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-15 08:56:09,387 INFO L290 TraceCheckUtils]: 13: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-15 08:56:09,387 INFO L290 TraceCheckUtils]: 12: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-15 08:56:09,387 INFO L272 TraceCheckUtils]: 11: Hoare triple {65734#(< ~counter~0 12)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {65311#true} is VALID [2022-04-15 08:56:09,387 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {65311#true} {65734#(< ~counter~0 12)} #94#return; {65734#(< ~counter~0 12)} is VALID [2022-04-15 08:56:09,387 INFO L290 TraceCheckUtils]: 9: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-15 08:56:09,388 INFO L290 TraceCheckUtils]: 8: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-15 08:56:09,388 INFO L290 TraceCheckUtils]: 7: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-15 08:56:09,388 INFO L272 TraceCheckUtils]: 6: Hoare triple {65734#(< ~counter~0 12)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {65311#true} is VALID [2022-04-15 08:56:09,388 INFO L290 TraceCheckUtils]: 5: Hoare triple {65734#(< ~counter~0 12)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {65734#(< ~counter~0 12)} is VALID [2022-04-15 08:56:09,388 INFO L272 TraceCheckUtils]: 4: Hoare triple {65734#(< ~counter~0 12)} call #t~ret9 := main(); {65734#(< ~counter~0 12)} is VALID [2022-04-15 08:56:09,388 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65734#(< ~counter~0 12)} {65311#true} #108#return; {65734#(< ~counter~0 12)} is VALID [2022-04-15 08:56:09,389 INFO L290 TraceCheckUtils]: 2: Hoare triple {65734#(< ~counter~0 12)} assume true; {65734#(< ~counter~0 12)} is VALID [2022-04-15 08:56:09,389 INFO L290 TraceCheckUtils]: 1: Hoare triple {65311#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);~counter~0 := 0; {65734#(< ~counter~0 12)} is VALID [2022-04-15 08:56:09,389 INFO L272 TraceCheckUtils]: 0: Hoare triple {65311#true} call ULTIMATE.init(); {65311#true} is VALID [2022-04-15 08:56:09,389 INFO L134 CoverageAnalysis]: Checked inductivity of 83 backedges. 25 proven. 30 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 08:56:09,390 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:56:09,390 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [31267150] [2022-04-15 08:56:09,390 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:56:09,390 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1518461473] [2022-04-15 08:56:09,390 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1518461473] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:56:09,390 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:56:09,390 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-15 08:56:09,390 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:56:09,390 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1270883649] [2022-04-15 08:56:09,390 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1270883649] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:56:09,390 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:56:09,390 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 08:56:09,390 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [990748214] [2022-04-15 08:56:09,390 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:56:09,391 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 76 [2022-04-15 08:56:09,391 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:56:09,391 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:56:09,435 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-15 08:56:09,435 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 08:56:09,435 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:56:09,435 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 08:56:09,435 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-15 08:56:09,436 INFO L87 Difference]: Start difference. First operand 813 states and 1106 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:56:12,256 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:12,257 INFO L93 Difference]: Finished difference Result 1433 states and 1997 transitions. [2022-04-15 08:56:12,257 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-15 08:56:12,257 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 76 [2022-04-15 08:56:12,257 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:56:12,257 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:56:12,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 239 transitions. [2022-04-15 08:56:12,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:56:12,260 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 239 transitions. [2022-04-15 08:56:12,260 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 239 transitions. [2022-04-15 08:56:12,431 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:56:12,472 INFO L225 Difference]: With dead ends: 1433 [2022-04-15 08:56:12,472 INFO L226 Difference]: Without dead ends: 975 [2022-04-15 08:56:12,473 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 131 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=309, Invalid=447, Unknown=0, NotChecked=0, Total=756 [2022-04-15 08:56:12,474 INFO L913 BasicCegarLoop]: 65 mSDtfsCounter, 170 mSDsluCounter, 222 mSDsCounter, 0 mSdLazyCounter, 144 mSolverCounterSat, 75 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 287 SdHoareTripleChecker+Invalid, 219 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 75 IncrementalHoareTripleChecker+Valid, 144 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 08:56:12,474 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [170 Valid, 287 Invalid, 219 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [75 Valid, 144 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 08:56:12,474 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 975 states. [2022-04-15 08:56:14,597 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 975 to 947. [2022-04-15 08:56:14,597 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:56:14,598 INFO L82 GeneralOperation]: Start isEquivalent. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-15 08:56:14,599 INFO L74 IsIncluded]: Start isIncluded. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-15 08:56:14,600 INFO L87 Difference]: Start difference. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-15 08:56:14,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:14,630 INFO L93 Difference]: Finished difference Result 975 states and 1288 transitions. [2022-04-15 08:56:14,630 INFO L276 IsEmpty]: Start isEmpty. Operand 975 states and 1288 transitions. [2022-04-15 08:56:14,632 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:56:14,632 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:56:14,633 INFO L74 IsIncluded]: Start isIncluded. First operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) Second operand 975 states. [2022-04-15 08:56:14,633 INFO L87 Difference]: Start difference. First operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) Second operand 975 states. [2022-04-15 08:56:14,661 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:14,661 INFO L93 Difference]: Finished difference Result 975 states and 1288 transitions. [2022-04-15 08:56:14,661 INFO L276 IsEmpty]: Start isEmpty. Operand 975 states and 1288 transitions. [2022-04-15 08:56:14,662 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:56:14,662 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:56:14,662 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:56:14,663 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:56:14,663 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-15 08:56:14,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 947 states to 947 states and 1263 transitions. [2022-04-15 08:56:14,707 INFO L78 Accepts]: Start accepts. Automaton has 947 states and 1263 transitions. Word has length 76 [2022-04-15 08:56:14,707 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:56:14,707 INFO L478 AbstractCegarLoop]: Abstraction has 947 states and 1263 transitions. [2022-04-15 08:56:14,707 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-15 08:56:14,707 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 947 states and 1263 transitions. [2022-04-15 08:56:16,936 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1263 edges. 1263 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:56:16,936 INFO L276 IsEmpty]: Start isEmpty. Operand 947 states and 1263 transitions. [2022-04-15 08:56:16,937 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 82 [2022-04-15 08:56:16,937 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:56:16,937 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:56:16,953 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Forceful destruction successful, exit code 0 [2022-04-15 08:56:17,137 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 28 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2022-04-15 08:56:17,137 INFO L403 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:56:17,138 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:56:17,138 INFO L85 PathProgramCache]: Analyzing trace with hash -362795852, now seen corresponding path program 1 times [2022-04-15 08:56:17,138 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:56:17,138 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1046077226] [2022-04-15 08:56:17,138 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:56:17,138 INFO L85 PathProgramCache]: Analyzing trace with hash -362795852, now seen corresponding path program 2 times [2022-04-15 08:56:17,138 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:56:17,138 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1702755859] [2022-04-15 08:56:17,138 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:56:17,139 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:56:17,147 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:56:17,147 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [18744557] [2022-04-15 08:56:17,147 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:56:17,148 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:56:17,148 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:56:17,148 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:56:17,151 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-04-15 08:56:17,195 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:56:17,195 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:56:17,196 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 56 conjunts are in the unsatisfiable core [2022-04-15 08:56:17,218 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:56:17,220 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:56:18,071 INFO L272 TraceCheckUtils]: 0: Hoare triple {72510#true} call ULTIMATE.init(); {72510#true} is VALID [2022-04-15 08:56:18,071 INFO L290 TraceCheckUtils]: 1: Hoare triple {72510#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);~counter~0 := 0; {72510#true} is VALID [2022-04-15 08:56:18,071 INFO L290 TraceCheckUtils]: 2: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {72510#true} {72510#true} #108#return; {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L272 TraceCheckUtils]: 4: Hoare triple {72510#true} call #t~ret9 := main(); {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L290 TraceCheckUtils]: 5: Hoare triple {72510#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L272 TraceCheckUtils]: 6: Hoare triple {72510#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L290 TraceCheckUtils]: 7: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L290 TraceCheckUtils]: 8: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L290 TraceCheckUtils]: 9: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {72510#true} {72510#true} #94#return; {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L272 TraceCheckUtils]: 11: Hoare triple {72510#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L290 TraceCheckUtils]: 12: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L290 TraceCheckUtils]: 13: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L290 TraceCheckUtils]: 14: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:18,072 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {72510#true} {72510#true} #96#return; {72510#true} is VALID [2022-04-15 08:56:18,073 INFO L290 TraceCheckUtils]: 16: Hoare triple {72510#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {72563#(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-15 08:56:18,073 INFO L290 TraceCheckUtils]: 17: Hoare triple {72563#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72563#(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-15 08:56:18,073 INFO L290 TraceCheckUtils]: 18: Hoare triple {72563#(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 !!(#t~post6 < 20);havoc #t~post6; {72563#(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-15 08:56:18,074 INFO L290 TraceCheckUtils]: 19: Hoare triple {72563#(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; {72573#(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-15 08:56:18,074 INFO L290 TraceCheckUtils]: 20: Hoare triple {72573#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72573#(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-15 08:56:18,075 INFO L290 TraceCheckUtils]: 21: Hoare triple {72573#(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 !!(#t~post7 < 20);havoc #t~post7; {72573#(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-15 08:56:18,075 INFO L290 TraceCheckUtils]: 22: Hoare triple {72573#(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; {72583#(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-15 08:56:18,075 INFO L290 TraceCheckUtils]: 23: Hoare triple {72583#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72583#(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-15 08:56:18,076 INFO L290 TraceCheckUtils]: 24: Hoare triple {72583#(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 !!(#t~post8 < 20);havoc #t~post8; {72583#(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-15 08:56:18,076 INFO L272 TraceCheckUtils]: 25: Hoare triple {72583#(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)); {72510#true} is VALID [2022-04-15 08:56:18,076 INFO L290 TraceCheckUtils]: 26: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:18,076 INFO L290 TraceCheckUtils]: 27: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:18,076 INFO L290 TraceCheckUtils]: 28: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:18,085 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {72510#true} {72583#(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))} #98#return; {72583#(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-15 08:56:18,086 INFO L272 TraceCheckUtils]: 30: Hoare triple {72583#(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)); {72510#true} is VALID [2022-04-15 08:56:18,086 INFO L290 TraceCheckUtils]: 31: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:18,086 INFO L290 TraceCheckUtils]: 32: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:18,086 INFO L290 TraceCheckUtils]: 33: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:18,087 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {72510#true} {72583#(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))} #100#return; {72583#(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-15 08:56:18,087 INFO L272 TraceCheckUtils]: 35: Hoare triple {72583#(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)); {72510#true} is VALID [2022-04-15 08:56:18,087 INFO L290 TraceCheckUtils]: 36: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:18,087 INFO L290 TraceCheckUtils]: 37: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:18,087 INFO L290 TraceCheckUtils]: 38: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:18,088 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {72510#true} {72583#(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; {72583#(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-15 08:56:18,088 INFO L272 TraceCheckUtils]: 40: Hoare triple {72583#(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)); {72510#true} is VALID [2022-04-15 08:56:18,088 INFO L290 TraceCheckUtils]: 41: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:18,088 INFO L290 TraceCheckUtils]: 42: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:18,088 INFO L290 TraceCheckUtils]: 43: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:18,088 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {72510#true} {72583#(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; {72583#(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-15 08:56:18,089 INFO L290 TraceCheckUtils]: 45: Hoare triple {72583#(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; {72653#(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-15 08:56:18,089 INFO L290 TraceCheckUtils]: 46: Hoare triple {72653#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72653#(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-15 08:56:18,090 INFO L290 TraceCheckUtils]: 47: Hoare triple {72653#(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 !!(#t~post8 < 20);havoc #t~post8; {72653#(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-15 08:56:18,090 INFO L272 TraceCheckUtils]: 48: Hoare triple {72653#(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)); {72510#true} is VALID [2022-04-15 08:56:18,090 INFO L290 TraceCheckUtils]: 49: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:18,090 INFO L290 TraceCheckUtils]: 50: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:18,090 INFO L290 TraceCheckUtils]: 51: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:18,091 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {72510#true} {72653#(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))} #98#return; {72653#(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-15 08:56:18,091 INFO L272 TraceCheckUtils]: 53: Hoare triple {72653#(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)); {72510#true} is VALID [2022-04-15 08:56:18,091 INFO L290 TraceCheckUtils]: 54: Hoare triple {72510#true} ~cond := #in~cond; {72681#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:56:18,091 INFO L290 TraceCheckUtils]: 55: Hoare triple {72681#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:18,092 INFO L290 TraceCheckUtils]: 56: Hoare triple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:18,092 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} {72653#(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))} #100#return; {72653#(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-15 08:56:18,092 INFO L272 TraceCheckUtils]: 58: Hoare triple {72653#(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)); {72510#true} is VALID [2022-04-15 08:56:18,092 INFO L290 TraceCheckUtils]: 59: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:18,092 INFO L290 TraceCheckUtils]: 60: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:18,093 INFO L290 TraceCheckUtils]: 61: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:18,093 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {72510#true} {72653#(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; {72653#(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-15 08:56:18,093 INFO L272 TraceCheckUtils]: 63: Hoare triple {72653#(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)); {72510#true} is VALID [2022-04-15 08:56:18,093 INFO L290 TraceCheckUtils]: 64: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:18,093 INFO L290 TraceCheckUtils]: 65: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:18,094 INFO L290 TraceCheckUtils]: 66: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:18,094 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {72510#true} {72653#(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; {72653#(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-15 08:56:18,095 INFO L290 TraceCheckUtils]: 68: Hoare triple {72653#(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); {72653#(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-15 08:56:18,095 INFO L290 TraceCheckUtils]: 69: Hoare triple {72653#(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; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:56:18,096 INFO L290 TraceCheckUtils]: 70: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:56:18,096 INFO L290 TraceCheckUtils]: 71: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:56:18,097 INFO L290 TraceCheckUtils]: 72: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:56:18,097 INFO L290 TraceCheckUtils]: 73: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= 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; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 08:56:18,098 INFO L290 TraceCheckUtils]: 74: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 08:56:18,098 INFO L290 TraceCheckUtils]: 75: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !!(#t~post6 < 20);havoc #t~post6; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 08:56:18,099 INFO L290 TraceCheckUtils]: 76: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {72751#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-15 08:56:18,099 INFO L272 TraceCheckUtils]: 77: Hoare triple {72751#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= 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)); {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:56:18,100 INFO L290 TraceCheckUtils]: 78: Hoare triple {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {72759#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:56:18,100 INFO L290 TraceCheckUtils]: 79: Hoare triple {72759#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {72511#false} is VALID [2022-04-15 08:56:18,100 INFO L290 TraceCheckUtils]: 80: Hoare triple {72511#false} assume !false; {72511#false} is VALID [2022-04-15 08:56:18,100 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 30 proven. 20 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-15 08:56:18,100 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:56:28,248 INFO L290 TraceCheckUtils]: 80: Hoare triple {72511#false} assume !false; {72511#false} is VALID [2022-04-15 08:56:28,249 INFO L290 TraceCheckUtils]: 79: Hoare triple {72759#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {72511#false} is VALID [2022-04-15 08:56:28,249 INFO L290 TraceCheckUtils]: 78: Hoare triple {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {72759#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:56:28,250 INFO L272 TraceCheckUtils]: 77: Hoare triple {72775#(= (+ (* 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)); {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:56:28,250 INFO L290 TraceCheckUtils]: 76: Hoare triple {72779#(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); {72775#(= (+ (* 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-15 08:56:28,251 INFO L290 TraceCheckUtils]: 75: Hoare triple {72779#(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 !!(#t~post6 < 20);havoc #t~post6; {72779#(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-15 08:56:28,251 INFO L290 TraceCheckUtils]: 74: Hoare triple {72779#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72779#(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-15 08:56:28,411 INFO L290 TraceCheckUtils]: 73: Hoare triple {72789#(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; {72779#(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-15 08:56:28,411 INFO L290 TraceCheckUtils]: 72: Hoare triple {72789#(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); {72789#(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-15 08:56:28,412 INFO L290 TraceCheckUtils]: 71: Hoare triple {72789#(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 !!(#t~post7 < 20);havoc #t~post7; {72789#(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-15 08:56:28,412 INFO L290 TraceCheckUtils]: 70: Hoare triple {72789#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72789#(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-15 08:56:28,442 INFO L290 TraceCheckUtils]: 69: Hoare triple {72802#(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; {72789#(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-15 08:56:28,443 INFO L290 TraceCheckUtils]: 68: Hoare triple {72802#(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); {72802#(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-15 08:56:28,444 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {72510#true} {72802#(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))))} #104#return; {72802#(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-15 08:56:28,444 INFO L290 TraceCheckUtils]: 66: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:28,444 INFO L290 TraceCheckUtils]: 65: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:28,444 INFO L290 TraceCheckUtils]: 64: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:28,444 INFO L272 TraceCheckUtils]: 63: Hoare triple {72802#(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)); {72510#true} is VALID [2022-04-15 08:56:28,445 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {72510#true} {72802#(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))))} #102#return; {72802#(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-15 08:56:28,445 INFO L290 TraceCheckUtils]: 61: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:28,445 INFO L290 TraceCheckUtils]: 60: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:28,445 INFO L290 TraceCheckUtils]: 59: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:28,445 INFO L272 TraceCheckUtils]: 58: Hoare triple {72802#(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)); {72510#true} is VALID [2022-04-15 08:56:28,446 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} {72839#(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))))} #100#return; {72802#(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-15 08:56:28,446 INFO L290 TraceCheckUtils]: 56: Hoare triple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:28,447 INFO L290 TraceCheckUtils]: 55: Hoare triple {72849#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:28,447 INFO L290 TraceCheckUtils]: 54: Hoare triple {72510#true} ~cond := #in~cond; {72849#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:56:28,447 INFO L272 TraceCheckUtils]: 53: Hoare triple {72839#(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)); {72510#true} is VALID [2022-04-15 08:56:28,448 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {72510#true} {72839#(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))))} #98#return; {72839#(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-15 08:56:28,448 INFO L290 TraceCheckUtils]: 51: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:28,448 INFO L290 TraceCheckUtils]: 50: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:28,448 INFO L290 TraceCheckUtils]: 49: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:28,448 INFO L272 TraceCheckUtils]: 48: Hoare triple {72839#(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 ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-15 08:56:28,448 INFO L290 TraceCheckUtils]: 47: Hoare triple {72839#(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))))} assume !!(#t~post8 < 20);havoc #t~post8; {72839#(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-15 08:56:28,449 INFO L290 TraceCheckUtils]: 46: Hoare triple {72839#(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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72839#(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-15 08:56:28,591 INFO L290 TraceCheckUtils]: 45: Hoare triple {72877#(or (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))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {72839#(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-15 08:56:28,592 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {72510#true} {72877#(or (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))))} #104#return; {72877#(or (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))))} is VALID [2022-04-15 08:56:28,592 INFO L290 TraceCheckUtils]: 43: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:28,592 INFO L290 TraceCheckUtils]: 42: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:28,592 INFO L290 TraceCheckUtils]: 41: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:28,593 INFO L272 TraceCheckUtils]: 40: Hoare triple {72877#(or (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))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-15 08:56:28,593 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {72510#true} {72877#(or (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))))} #102#return; {72877#(or (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))))} is VALID [2022-04-15 08:56:28,593 INFO L290 TraceCheckUtils]: 38: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:28,593 INFO L290 TraceCheckUtils]: 37: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:28,593 INFO L290 TraceCheckUtils]: 36: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:28,593 INFO L272 TraceCheckUtils]: 35: Hoare triple {72877#(or (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))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-15 08:56:28,594 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {72510#true} {72877#(or (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))))} #100#return; {72877#(or (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))))} is VALID [2022-04-15 08:56:28,594 INFO L290 TraceCheckUtils]: 33: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:28,594 INFO L290 TraceCheckUtils]: 32: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:28,594 INFO L290 TraceCheckUtils]: 31: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:28,594 INFO L272 TraceCheckUtils]: 30: Hoare triple {72877#(or (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))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-15 08:56:28,595 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {72510#true} {72877#(or (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))))} #98#return; {72877#(or (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))))} is VALID [2022-04-15 08:56:28,595 INFO L290 TraceCheckUtils]: 28: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:28,595 INFO L290 TraceCheckUtils]: 27: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:28,595 INFO L290 TraceCheckUtils]: 26: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:28,595 INFO L272 TraceCheckUtils]: 25: Hoare triple {72877#(or (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))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-15 08:56:28,596 INFO L290 TraceCheckUtils]: 24: Hoare triple {72877#(or (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))))} assume !!(#t~post8 < 20);havoc #t~post8; {72877#(or (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))))} is VALID [2022-04-15 08:56:28,597 INFO L290 TraceCheckUtils]: 23: Hoare triple {72877#(or (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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72877#(or (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))))} is VALID [2022-04-15 08:56:28,597 INFO L290 TraceCheckUtils]: 22: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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; {72877#(or (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))))} is VALID [2022-04-15 08:56:28,598 INFO L290 TraceCheckUtils]: 21: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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 !!(#t~post7 < 20);havoc #t~post7; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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-15 08:56:28,598 INFO L290 TraceCheckUtils]: 20: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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-15 08:56:28,599 INFO L290 TraceCheckUtils]: 19: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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-15 08:56:28,599 INFO L290 TraceCheckUtils]: 18: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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 !!(#t~post6 < 20);havoc #t~post6; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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-15 08:56:28,600 INFO L290 TraceCheckUtils]: 17: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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-15 08:56:28,600 INFO L290 TraceCheckUtils]: 16: Hoare triple {72510#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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-15 08:56:28,601 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {72510#true} {72510#true} #96#return; {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L290 TraceCheckUtils]: 14: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L290 TraceCheckUtils]: 13: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L290 TraceCheckUtils]: 12: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L272 TraceCheckUtils]: 11: Hoare triple {72510#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {72510#true} {72510#true} #94#return; {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L290 TraceCheckUtils]: 9: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L290 TraceCheckUtils]: 8: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L290 TraceCheckUtils]: 7: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L272 TraceCheckUtils]: 6: Hoare triple {72510#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L290 TraceCheckUtils]: 5: Hoare triple {72510#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L272 TraceCheckUtils]: 4: Hoare triple {72510#true} call #t~ret9 := main(); {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {72510#true} {72510#true} #108#return; {72510#true} is VALID [2022-04-15 08:56:28,601 INFO L290 TraceCheckUtils]: 2: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-15 08:56:28,602 INFO L290 TraceCheckUtils]: 1: Hoare triple {72510#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);~counter~0 := 0; {72510#true} is VALID [2022-04-15 08:56:28,602 INFO L272 TraceCheckUtils]: 0: Hoare triple {72510#true} call ULTIMATE.init(); {72510#true} is VALID [2022-04-15 08:56:28,602 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 30 proven. 20 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-15 08:56:28,602 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:56:28,602 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1702755859] [2022-04-15 08:56:28,602 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:56:28,602 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [18744557] [2022-04-15 08:56:28,602 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [18744557] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:56:28,603 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:56:28,603 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-15 08:56:28,603 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:56:28,603 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1046077226] [2022-04-15 08:56:28,603 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1046077226] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:56:28,603 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:56:28,603 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 08:56:28,603 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1119342509] [2022-04-15 08:56:28,603 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:56:28,603 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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 81 [2022-04-15 08:56:28,603 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:56:28,604 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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-15 08:56:28,660 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:56:28,660 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 08:56:28,660 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:56:28,661 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 08:56:28,661 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=392, Unknown=0, NotChecked=0, Total=462 [2022-04-15 08:56:28,661 INFO L87 Difference]: Start difference. First operand 947 states and 1263 transitions. Second operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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-15 08:56:33,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:33,478 INFO L93 Difference]: Finished difference Result 1025 states and 1371 transitions. [2022-04-15 08:56:33,478 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 08:56:33,478 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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 81 [2022-04-15 08:56:33,479 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:56:33,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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-15 08:56:33,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 162 transitions. [2022-04-15 08:56:33,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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-15 08:56:33,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 162 transitions. [2022-04-15 08:56:33,481 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 162 transitions. [2022-04-15 08:56:33,658 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:56:33,702 INFO L225 Difference]: With dead ends: 1025 [2022-04-15 08:56:33,703 INFO L226 Difference]: Without dead ends: 1022 [2022-04-15 08:56:33,703 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 168 GetRequests, 140 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 111 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=132, Invalid=680, Unknown=0, NotChecked=0, Total=812 [2022-04-15 08:56:33,703 INFO L913 BasicCegarLoop]: 63 mSDtfsCounter, 74 mSDsluCounter, 438 mSDsCounter, 0 mSdLazyCounter, 760 mSolverCounterSat, 59 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 501 SdHoareTripleChecker+Invalid, 819 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 59 IncrementalHoareTripleChecker+Valid, 760 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-15 08:56:33,703 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [82 Valid, 501 Invalid, 819 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [59 Valid, 760 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-15 08:56:33,704 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1022 states. [2022-04-15 08:56:35,810 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1022 to 957. [2022-04-15 08:56:35,810 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:56:35,811 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-15 08:56:35,811 INFO L74 IsIncluded]: Start isIncluded. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-15 08:56:35,812 INFO L87 Difference]: Start difference. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-15 08:56:35,842 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:35,842 INFO L93 Difference]: Finished difference Result 1022 states and 1364 transitions. [2022-04-15 08:56:35,842 INFO L276 IsEmpty]: Start isEmpty. Operand 1022 states and 1364 transitions. [2022-04-15 08:56:35,844 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:56:35,844 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:56:35,845 INFO L74 IsIncluded]: Start isIncluded. First operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 1022 states. [2022-04-15 08:56:35,845 INFO L87 Difference]: Start difference. First operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 1022 states. [2022-04-15 08:56:35,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:35,876 INFO L93 Difference]: Finished difference Result 1022 states and 1364 transitions. [2022-04-15 08:56:35,876 INFO L276 IsEmpty]: Start isEmpty. Operand 1022 states and 1364 transitions. [2022-04-15 08:56:35,878 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:56:35,878 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:56:35,878 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:56:35,878 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:56:35,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-15 08:56:35,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 957 states to 957 states and 1272 transitions. [2022-04-15 08:56:35,919 INFO L78 Accepts]: Start accepts. Automaton has 957 states and 1272 transitions. Word has length 81 [2022-04-15 08:56:35,919 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:56:35,919 INFO L478 AbstractCegarLoop]: Abstraction has 957 states and 1272 transitions. [2022-04-15 08:56:35,919 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 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-15 08:56:35,919 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 957 states and 1272 transitions. [2022-04-15 08:56:38,220 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1272 edges. 1272 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:56:38,220 INFO L276 IsEmpty]: Start isEmpty. Operand 957 states and 1272 transitions. [2022-04-15 08:56:38,221 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2022-04-15 08:56:38,221 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:56:38,221 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:56:38,239 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Forceful destruction successful, exit code 0 [2022-04-15 08:56:38,421 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 29 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-04-15 08:56:38,421 INFO L403 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:56:38,422 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:56:38,422 INFO L85 PathProgramCache]: Analyzing trace with hash -2112645673, now seen corresponding path program 1 times [2022-04-15 08:56:38,422 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:56:38,422 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1917336649] [2022-04-15 08:56:38,422 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:56:38,422 INFO L85 PathProgramCache]: Analyzing trace with hash -2112645673, now seen corresponding path program 2 times [2022-04-15 08:56:38,422 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:56:38,422 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [72038797] [2022-04-15 08:56:38,422 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:56:38,422 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:56:38,431 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:56:38,432 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [269454637] [2022-04-15 08:56:38,432 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:56:38,432 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:56:38,432 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:56:38,433 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:56:38,434 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-04-15 08:56:38,483 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:56:38,483 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:56:38,484 INFO L263 TraceCheckSpWp]: Trace formula consists of 261 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-15 08:56:38,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:56:38,500 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:56:38,842 INFO L272 TraceCheckUtils]: 0: Hoare triple {79039#true} call ULTIMATE.init(); {79039#true} is VALID [2022-04-15 08:56:38,843 INFO L290 TraceCheckUtils]: 1: Hoare triple {79039#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);~counter~0 := 0; {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,843 INFO L290 TraceCheckUtils]: 2: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,843 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79047#(<= ~counter~0 0)} {79039#true} #108#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,844 INFO L272 TraceCheckUtils]: 4: Hoare triple {79047#(<= ~counter~0 0)} call #t~ret9 := main(); {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,852 INFO L290 TraceCheckUtils]: 5: Hoare triple {79047#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,852 INFO L272 TraceCheckUtils]: 6: Hoare triple {79047#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,853 INFO L290 TraceCheckUtils]: 7: Hoare triple {79047#(<= ~counter~0 0)} ~cond := #in~cond; {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,853 INFO L290 TraceCheckUtils]: 8: Hoare triple {79047#(<= ~counter~0 0)} assume !(0 == ~cond); {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,853 INFO L290 TraceCheckUtils]: 9: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,854 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {79047#(<= ~counter~0 0)} {79047#(<= ~counter~0 0)} #94#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,854 INFO L272 TraceCheckUtils]: 11: Hoare triple {79047#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,854 INFO L290 TraceCheckUtils]: 12: Hoare triple {79047#(<= ~counter~0 0)} ~cond := #in~cond; {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,854 INFO L290 TraceCheckUtils]: 13: Hoare triple {79047#(<= ~counter~0 0)} assume !(0 == ~cond); {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,855 INFO L290 TraceCheckUtils]: 14: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,855 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {79047#(<= ~counter~0 0)} {79047#(<= ~counter~0 0)} #96#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,855 INFO L290 TraceCheckUtils]: 16: Hoare triple {79047#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {79047#(<= ~counter~0 0)} is VALID [2022-04-15 08:56:38,857 INFO L290 TraceCheckUtils]: 17: Hoare triple {79047#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79096#(<= ~counter~0 1)} is VALID [2022-04-15 08:56:38,857 INFO L290 TraceCheckUtils]: 18: Hoare triple {79096#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {79096#(<= ~counter~0 1)} is VALID [2022-04-15 08:56:38,857 INFO L290 TraceCheckUtils]: 19: Hoare triple {79096#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79096#(<= ~counter~0 1)} is VALID [2022-04-15 08:56:38,858 INFO L290 TraceCheckUtils]: 20: Hoare triple {79096#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79106#(<= ~counter~0 2)} is VALID [2022-04-15 08:56:38,858 INFO L290 TraceCheckUtils]: 21: Hoare triple {79106#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {79106#(<= ~counter~0 2)} is VALID [2022-04-15 08:56:38,858 INFO L290 TraceCheckUtils]: 22: Hoare triple {79106#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {79106#(<= ~counter~0 2)} is VALID [2022-04-15 08:56:38,859 INFO L290 TraceCheckUtils]: 23: Hoare triple {79106#(<= ~counter~0 2)} ~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; {79106#(<= ~counter~0 2)} is VALID [2022-04-15 08:56:38,859 INFO L290 TraceCheckUtils]: 24: Hoare triple {79106#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79119#(<= ~counter~0 3)} is VALID [2022-04-15 08:56:38,860 INFO L290 TraceCheckUtils]: 25: Hoare triple {79119#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {79119#(<= ~counter~0 3)} is VALID [2022-04-15 08:56:38,860 INFO L290 TraceCheckUtils]: 26: Hoare triple {79119#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79119#(<= ~counter~0 3)} is VALID [2022-04-15 08:56:38,860 INFO L290 TraceCheckUtils]: 27: Hoare triple {79119#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79129#(<= ~counter~0 4)} is VALID [2022-04-15 08:56:38,861 INFO L290 TraceCheckUtils]: 28: Hoare triple {79129#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {79129#(<= ~counter~0 4)} is VALID [2022-04-15 08:56:38,861 INFO L290 TraceCheckUtils]: 29: Hoare triple {79129#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {79129#(<= ~counter~0 4)} is VALID [2022-04-15 08:56:38,862 INFO L290 TraceCheckUtils]: 30: Hoare triple {79129#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,862 INFO L290 TraceCheckUtils]: 31: Hoare triple {79139#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,862 INFO L272 TraceCheckUtils]: 32: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,863 INFO L290 TraceCheckUtils]: 33: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,863 INFO L290 TraceCheckUtils]: 34: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,863 INFO L290 TraceCheckUtils]: 35: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,864 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #98#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,864 INFO L272 TraceCheckUtils]: 37: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,864 INFO L290 TraceCheckUtils]: 38: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,865 INFO L290 TraceCheckUtils]: 39: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,865 INFO L290 TraceCheckUtils]: 40: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,865 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #100#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,866 INFO L272 TraceCheckUtils]: 42: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,866 INFO L290 TraceCheckUtils]: 43: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,866 INFO L290 TraceCheckUtils]: 44: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,867 INFO L290 TraceCheckUtils]: 45: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,868 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #102#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,868 INFO L272 TraceCheckUtils]: 47: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,869 INFO L290 TraceCheckUtils]: 48: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,869 INFO L290 TraceCheckUtils]: 49: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,869 INFO L290 TraceCheckUtils]: 50: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,869 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #104#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,870 INFO L290 TraceCheckUtils]: 52: Hoare triple {79139#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {79139#(<= ~counter~0 5)} is VALID [2022-04-15 08:56:38,871 INFO L290 TraceCheckUtils]: 53: Hoare triple {79139#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,871 INFO L290 TraceCheckUtils]: 54: Hoare triple {79209#(<= ~counter~0 6)} assume !!(#t~post8 < 20);havoc #t~post8; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,872 INFO L272 TraceCheckUtils]: 55: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,872 INFO L290 TraceCheckUtils]: 56: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,872 INFO L290 TraceCheckUtils]: 57: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,872 INFO L290 TraceCheckUtils]: 58: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,873 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #98#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,873 INFO L272 TraceCheckUtils]: 60: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,874 INFO L290 TraceCheckUtils]: 61: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,874 INFO L290 TraceCheckUtils]: 62: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,874 INFO L290 TraceCheckUtils]: 63: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,875 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #100#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,875 INFO L272 TraceCheckUtils]: 65: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,875 INFO L290 TraceCheckUtils]: 66: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,875 INFO L290 TraceCheckUtils]: 67: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,876 INFO L290 TraceCheckUtils]: 68: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,876 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #102#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,877 INFO L272 TraceCheckUtils]: 70: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,877 INFO L290 TraceCheckUtils]: 71: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,877 INFO L290 TraceCheckUtils]: 72: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,877 INFO L290 TraceCheckUtils]: 73: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,878 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #104#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,878 INFO L290 TraceCheckUtils]: 75: Hoare triple {79209#(<= ~counter~0 6)} assume !(~c~0 >= 2 * ~v~0); {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,878 INFO L290 TraceCheckUtils]: 76: Hoare triple {79209#(<= ~counter~0 6)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {79209#(<= ~counter~0 6)} is VALID [2022-04-15 08:56:38,879 INFO L290 TraceCheckUtils]: 77: Hoare triple {79209#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79282#(<= ~counter~0 7)} is VALID [2022-04-15 08:56:38,879 INFO L290 TraceCheckUtils]: 78: Hoare triple {79282#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {79282#(<= ~counter~0 7)} is VALID [2022-04-15 08:56:38,880 INFO L290 TraceCheckUtils]: 79: Hoare triple {79282#(<= ~counter~0 7)} assume !(~c~0 >= ~b~0); {79282#(<= ~counter~0 7)} is VALID [2022-04-15 08:56:38,880 INFO L290 TraceCheckUtils]: 80: Hoare triple {79282#(<= ~counter~0 7)} ~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; {79282#(<= ~counter~0 7)} is VALID [2022-04-15 08:56:38,880 INFO L290 TraceCheckUtils]: 81: Hoare triple {79282#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79295#(<= |main_#t~post6| 7)} is VALID [2022-04-15 08:56:38,880 INFO L290 TraceCheckUtils]: 82: Hoare triple {79295#(<= |main_#t~post6| 7)} assume !(#t~post6 < 20);havoc #t~post6; {79040#false} is VALID [2022-04-15 08:56:38,881 INFO L272 TraceCheckUtils]: 83: Hoare triple {79040#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)); {79040#false} is VALID [2022-04-15 08:56:38,881 INFO L290 TraceCheckUtils]: 84: Hoare triple {79040#false} ~cond := #in~cond; {79040#false} is VALID [2022-04-15 08:56:38,881 INFO L290 TraceCheckUtils]: 85: Hoare triple {79040#false} assume 0 == ~cond; {79040#false} is VALID [2022-04-15 08:56:38,881 INFO L290 TraceCheckUtils]: 86: Hoare triple {79040#false} assume !false; {79040#false} is VALID [2022-04-15 08:56:38,881 INFO L134 CoverageAnalysis]: Checked inductivity of 156 backedges. 16 proven. 88 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-15 08:56:38,881 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:56:39,303 INFO L290 TraceCheckUtils]: 86: Hoare triple {79040#false} assume !false; {79040#false} is VALID [2022-04-15 08:56:39,303 INFO L290 TraceCheckUtils]: 85: Hoare triple {79040#false} assume 0 == ~cond; {79040#false} is VALID [2022-04-15 08:56:39,303 INFO L290 TraceCheckUtils]: 84: Hoare triple {79040#false} ~cond := #in~cond; {79040#false} is VALID [2022-04-15 08:56:39,303 INFO L272 TraceCheckUtils]: 83: Hoare triple {79040#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)); {79040#false} is VALID [2022-04-15 08:56:39,303 INFO L290 TraceCheckUtils]: 82: Hoare triple {79323#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {79040#false} is VALID [2022-04-15 08:56:39,304 INFO L290 TraceCheckUtils]: 81: Hoare triple {79327#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79323#(< |main_#t~post6| 20)} is VALID [2022-04-15 08:56:39,304 INFO L290 TraceCheckUtils]: 80: Hoare triple {79327#(< ~counter~0 20)} ~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; {79327#(< ~counter~0 20)} is VALID [2022-04-15 08:56:39,304 INFO L290 TraceCheckUtils]: 79: Hoare triple {79327#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {79327#(< ~counter~0 20)} is VALID [2022-04-15 08:56:39,304 INFO L290 TraceCheckUtils]: 78: Hoare triple {79327#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {79327#(< ~counter~0 20)} is VALID [2022-04-15 08:56:39,306 INFO L290 TraceCheckUtils]: 77: Hoare triple {79340#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79327#(< ~counter~0 20)} is VALID [2022-04-15 08:56:39,306 INFO L290 TraceCheckUtils]: 76: Hoare triple {79340#(< ~counter~0 19)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {79340#(< ~counter~0 19)} is VALID [2022-04-15 08:56:39,306 INFO L290 TraceCheckUtils]: 75: Hoare triple {79340#(< ~counter~0 19)} assume !(~c~0 >= 2 * ~v~0); {79340#(< ~counter~0 19)} is VALID [2022-04-15 08:56:39,307 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {79039#true} {79340#(< ~counter~0 19)} #104#return; {79340#(< ~counter~0 19)} is VALID [2022-04-15 08:56:39,307 INFO L290 TraceCheckUtils]: 73: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-15 08:56:39,307 INFO L290 TraceCheckUtils]: 72: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-15 08:56:39,307 INFO L290 TraceCheckUtils]: 71: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-15 08:56:39,307 INFO L272 TraceCheckUtils]: 70: Hoare triple {79340#(< ~counter~0 19)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79039#true} is VALID [2022-04-15 08:56:39,312 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {79039#true} {79340#(< ~counter~0 19)} #102#return; {79340#(< ~counter~0 19)} is VALID [2022-04-15 08:56:39,312 INFO L290 TraceCheckUtils]: 68: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-15 08:56:39,312 INFO L290 TraceCheckUtils]: 67: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-15 08:56:39,313 INFO L290 TraceCheckUtils]: 66: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-15 08:56:39,313 INFO L272 TraceCheckUtils]: 65: Hoare triple {79340#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79039#true} is VALID [2022-04-15 08:56:39,314 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {79039#true} {79340#(< ~counter~0 19)} #100#return; {79340#(< ~counter~0 19)} is VALID [2022-04-15 08:56:39,314 INFO L290 TraceCheckUtils]: 63: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-15 08:56:39,314 INFO L290 TraceCheckUtils]: 62: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-15 08:56:39,315 INFO L290 TraceCheckUtils]: 61: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-15 08:56:39,315 INFO L272 TraceCheckUtils]: 60: Hoare triple {79340#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79039#true} is VALID [2022-04-15 08:56:39,316 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {79039#true} {79340#(< ~counter~0 19)} #98#return; {79340#(< ~counter~0 19)} is VALID [2022-04-15 08:56:39,316 INFO L290 TraceCheckUtils]: 58: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-15 08:56:39,316 INFO L290 TraceCheckUtils]: 57: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-15 08:56:39,316 INFO L290 TraceCheckUtils]: 56: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-15 08:56:39,316 INFO L272 TraceCheckUtils]: 55: Hoare triple {79340#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79039#true} is VALID [2022-04-15 08:56:39,316 INFO L290 TraceCheckUtils]: 54: Hoare triple {79340#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {79340#(< ~counter~0 19)} is VALID [2022-04-15 08:56:39,318 INFO L290 TraceCheckUtils]: 53: Hoare triple {79413#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79340#(< ~counter~0 19)} is VALID [2022-04-15 08:56:39,318 INFO L290 TraceCheckUtils]: 52: Hoare triple {79413#(< ~counter~0 18)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {79413#(< ~counter~0 18)} is VALID [2022-04-15 08:56:39,318 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {79039#true} {79413#(< ~counter~0 18)} #104#return; {79413#(< ~counter~0 18)} is VALID [2022-04-15 08:56:39,318 INFO L290 TraceCheckUtils]: 50: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-15 08:56:39,318 INFO L290 TraceCheckUtils]: 49: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-15 08:56:39,319 INFO L290 TraceCheckUtils]: 48: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-15 08:56:39,319 INFO L272 TraceCheckUtils]: 47: Hoare triple {79413#(< ~counter~0 18)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79039#true} is VALID [2022-04-15 08:56:39,319 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {79039#true} {79413#(< ~counter~0 18)} #102#return; {79413#(< ~counter~0 18)} is VALID [2022-04-15 08:56:39,319 INFO L290 TraceCheckUtils]: 45: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-15 08:56:39,319 INFO L290 TraceCheckUtils]: 44: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-15 08:56:39,319 INFO L290 TraceCheckUtils]: 43: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-15 08:56:39,319 INFO L272 TraceCheckUtils]: 42: Hoare triple {79413#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79039#true} is VALID [2022-04-15 08:56:39,320 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {79039#true} {79413#(< ~counter~0 18)} #100#return; {79413#(< ~counter~0 18)} is VALID [2022-04-15 08:56:39,320 INFO L290 TraceCheckUtils]: 40: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-15 08:56:39,320 INFO L290 TraceCheckUtils]: 39: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-15 08:56:39,320 INFO L290 TraceCheckUtils]: 38: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-15 08:56:39,320 INFO L272 TraceCheckUtils]: 37: Hoare triple {79413#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79039#true} is VALID [2022-04-15 08:56:39,321 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {79039#true} {79413#(< ~counter~0 18)} #98#return; {79413#(< ~counter~0 18)} is VALID [2022-04-15 08:56:39,321 INFO L290 TraceCheckUtils]: 35: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-15 08:56:39,321 INFO L290 TraceCheckUtils]: 34: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-15 08:56:39,321 INFO L290 TraceCheckUtils]: 33: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-15 08:56:39,321 INFO L272 TraceCheckUtils]: 32: Hoare triple {79413#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79039#true} is VALID [2022-04-15 08:56:39,321 INFO L290 TraceCheckUtils]: 31: Hoare triple {79413#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {79413#(< ~counter~0 18)} is VALID [2022-04-15 08:56:39,322 INFO L290 TraceCheckUtils]: 30: Hoare triple {79483#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79413#(< ~counter~0 18)} is VALID [2022-04-15 08:56:39,322 INFO L290 TraceCheckUtils]: 29: Hoare triple {79483#(< ~counter~0 17)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {79483#(< ~counter~0 17)} is VALID [2022-04-15 08:56:39,322 INFO L290 TraceCheckUtils]: 28: Hoare triple {79483#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {79483#(< ~counter~0 17)} is VALID [2022-04-15 08:56:39,323 INFO L290 TraceCheckUtils]: 27: Hoare triple {79493#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79483#(< ~counter~0 17)} is VALID [2022-04-15 08:56:39,323 INFO L290 TraceCheckUtils]: 26: Hoare triple {79493#(< ~counter~0 16)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79493#(< ~counter~0 16)} is VALID [2022-04-15 08:56:39,323 INFO L290 TraceCheckUtils]: 25: Hoare triple {79493#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {79493#(< ~counter~0 16)} is VALID [2022-04-15 08:56:39,324 INFO L290 TraceCheckUtils]: 24: Hoare triple {79503#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79493#(< ~counter~0 16)} is VALID [2022-04-15 08:56:39,324 INFO L290 TraceCheckUtils]: 23: Hoare triple {79503#(< ~counter~0 15)} ~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; {79503#(< ~counter~0 15)} is VALID [2022-04-15 08:56:39,328 INFO L290 TraceCheckUtils]: 22: Hoare triple {79503#(< ~counter~0 15)} assume !(~c~0 >= ~b~0); {79503#(< ~counter~0 15)} is VALID [2022-04-15 08:56:39,328 INFO L290 TraceCheckUtils]: 21: Hoare triple {79503#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {79503#(< ~counter~0 15)} is VALID [2022-04-15 08:56:39,329 INFO L290 TraceCheckUtils]: 20: Hoare triple {79516#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79503#(< ~counter~0 15)} is VALID [2022-04-15 08:56:39,329 INFO L290 TraceCheckUtils]: 19: Hoare triple {79516#(< ~counter~0 14)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79516#(< ~counter~0 14)} is VALID [2022-04-15 08:56:39,330 INFO L290 TraceCheckUtils]: 18: Hoare triple {79516#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {79516#(< ~counter~0 14)} is VALID [2022-04-15 08:56:39,330 INFO L290 TraceCheckUtils]: 17: Hoare triple {79526#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79516#(< ~counter~0 14)} is VALID [2022-04-15 08:56:39,330 INFO L290 TraceCheckUtils]: 16: Hoare triple {79526#(< ~counter~0 13)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {79526#(< ~counter~0 13)} is VALID [2022-04-15 08:56:39,331 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {79039#true} {79526#(< ~counter~0 13)} #96#return; {79526#(< ~counter~0 13)} is VALID [2022-04-15 08:56:39,331 INFO L290 TraceCheckUtils]: 14: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-15 08:56:39,331 INFO L290 TraceCheckUtils]: 13: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-15 08:56:39,331 INFO L290 TraceCheckUtils]: 12: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-15 08:56:39,331 INFO L272 TraceCheckUtils]: 11: Hoare triple {79526#(< ~counter~0 13)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {79039#true} is VALID [2022-04-15 08:56:39,331 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {79039#true} {79526#(< ~counter~0 13)} #94#return; {79526#(< ~counter~0 13)} is VALID [2022-04-15 08:56:39,332 INFO L290 TraceCheckUtils]: 9: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-15 08:56:39,332 INFO L290 TraceCheckUtils]: 8: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-15 08:56:39,332 INFO L290 TraceCheckUtils]: 7: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-15 08:56:39,332 INFO L272 TraceCheckUtils]: 6: Hoare triple {79526#(< ~counter~0 13)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {79039#true} is VALID [2022-04-15 08:56:39,332 INFO L290 TraceCheckUtils]: 5: Hoare triple {79526#(< ~counter~0 13)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {79526#(< ~counter~0 13)} is VALID [2022-04-15 08:56:39,332 INFO L272 TraceCheckUtils]: 4: Hoare triple {79526#(< ~counter~0 13)} call #t~ret9 := main(); {79526#(< ~counter~0 13)} is VALID [2022-04-15 08:56:39,333 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79526#(< ~counter~0 13)} {79039#true} #108#return; {79526#(< ~counter~0 13)} is VALID [2022-04-15 08:56:39,333 INFO L290 TraceCheckUtils]: 2: Hoare triple {79526#(< ~counter~0 13)} assume true; {79526#(< ~counter~0 13)} is VALID [2022-04-15 08:56:39,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {79039#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);~counter~0 := 0; {79526#(< ~counter~0 13)} is VALID [2022-04-15 08:56:39,333 INFO L272 TraceCheckUtils]: 0: Hoare triple {79039#true} call ULTIMATE.init(); {79039#true} is VALID [2022-04-15 08:56:39,334 INFO L134 CoverageAnalysis]: Checked inductivity of 156 backedges. 16 proven. 24 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-15 08:56:39,334 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:56:39,334 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [72038797] [2022-04-15 08:56:39,334 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:56:39,334 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [269454637] [2022-04-15 08:56:39,334 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [269454637] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:56:39,334 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:56:39,334 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-15 08:56:39,334 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:56:39,334 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1917336649] [2022-04-15 08:56:39,334 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1917336649] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:56:39,334 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:56:39,334 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 08:56:39,335 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1216133466] [2022-04-15 08:56:39,335 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:56:39,335 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 87 [2022-04-15 08:56:39,335 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:56:39,335 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:56:39,385 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:56:39,385 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 08:56:39,386 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:56:39,387 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 08:56:39,387 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-15 08:56:39,387 INFO L87 Difference]: Start difference. First operand 957 states and 1272 transitions. Second operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:56:42,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:42,049 INFO L93 Difference]: Finished difference Result 966 states and 1279 transitions. [2022-04-15 08:56:42,049 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-15 08:56:42,049 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 87 [2022-04-15 08:56:42,049 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:56:42,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:56:42,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 180 transitions. [2022-04-15 08:56:42,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:56:42,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 180 transitions. [2022-04-15 08:56:42,052 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 180 transitions. [2022-04-15 08:56:42,202 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 180 edges. 180 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:56:42,240 INFO L225 Difference]: With dead ends: 966 [2022-04-15 08:56:42,240 INFO L226 Difference]: Without dead ends: 959 [2022-04-15 08:56:42,240 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 155 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=246, Invalid=354, Unknown=0, NotChecked=0, Total=600 [2022-04-15 08:56:42,241 INFO L913 BasicCegarLoop]: 65 mSDtfsCounter, 104 mSDsluCounter, 217 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 104 SdHoareTripleChecker+Valid, 282 SdHoareTripleChecker+Invalid, 178 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 08:56:42,241 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [104 Valid, 282 Invalid, 178 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 08:56:42,241 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 959 states. [2022-04-15 08:56:44,383 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 959 to 957. [2022-04-15 08:56:44,383 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:56:44,384 INFO L82 GeneralOperation]: Start isEquivalent. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-15 08:56:44,384 INFO L74 IsIncluded]: Start isIncluded. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-15 08:56:44,385 INFO L87 Difference]: Start difference. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-15 08:56:44,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:44,412 INFO L93 Difference]: Finished difference Result 959 states and 1271 transitions. [2022-04-15 08:56:44,412 INFO L276 IsEmpty]: Start isEmpty. Operand 959 states and 1271 transitions. [2022-04-15 08:56:44,414 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:56:44,414 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:56:44,415 INFO L74 IsIncluded]: Start isIncluded. First operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 959 states. [2022-04-15 08:56:44,415 INFO L87 Difference]: Start difference. First operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 959 states. [2022-04-15 08:56:44,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:56:44,443 INFO L93 Difference]: Finished difference Result 959 states and 1271 transitions. [2022-04-15 08:56:44,443 INFO L276 IsEmpty]: Start isEmpty. Operand 959 states and 1271 transitions. [2022-04-15 08:56:44,444 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:56:44,444 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:56:44,444 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:56:44,444 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:56:44,445 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-15 08:56:44,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 957 states to 957 states and 1270 transitions. [2022-04-15 08:56:44,485 INFO L78 Accepts]: Start accepts. Automaton has 957 states and 1270 transitions. Word has length 87 [2022-04-15 08:56:44,485 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:56:44,485 INFO L478 AbstractCegarLoop]: Abstraction has 957 states and 1270 transitions. [2022-04-15 08:56:44,485 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:56:44,485 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 957 states and 1270 transitions. [2022-04-15 08:56:47,007 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1270 edges. 1270 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:56:47,008 INFO L276 IsEmpty]: Start isEmpty. Operand 957 states and 1270 transitions. [2022-04-15 08:56:47,008 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2022-04-15 08:56:47,008 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:56:47,008 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:56:47,026 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Forceful destruction successful, exit code 0 [2022-04-15 08:56:47,209 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,30 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:56:47,209 INFO L403 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:56:47,209 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:56:47,209 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 3 times [2022-04-15 08:56:47,209 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:56:47,209 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [848866461] [2022-04-15 08:56:47,210 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:56:47,210 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 4 times [2022-04-15 08:56:47,210 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:56:47,210 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [742819450] [2022-04-15 08:56:47,210 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:56:47,210 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:56:47,221 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:56:47,221 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [936869472] [2022-04-15 08:56:47,221 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 08:56:47,221 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:56:47,221 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:56:47,222 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:56:47,223 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-04-15 08:56:47,271 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 08:56:47,272 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:56:47,273 INFO L263 TraceCheckSpWp]: Trace formula consists of 222 conjuncts, 80 conjunts are in the unsatisfiable core [2022-04-15 08:56:47,286 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:56:47,287 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:56:48,393 INFO L272 TraceCheckUtils]: 0: Hoare triple {85354#true} call ULTIMATE.init(); {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L290 TraceCheckUtils]: 1: Hoare triple {85354#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);~counter~0 := 0; {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L290 TraceCheckUtils]: 2: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85354#true} {85354#true} #108#return; {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L272 TraceCheckUtils]: 4: Hoare triple {85354#true} call #t~ret9 := main(); {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L290 TraceCheckUtils]: 5: Hoare triple {85354#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L272 TraceCheckUtils]: 6: Hoare triple {85354#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L290 TraceCheckUtils]: 7: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L290 TraceCheckUtils]: 8: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L290 TraceCheckUtils]: 9: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85354#true} {85354#true} #94#return; {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L272 TraceCheckUtils]: 11: Hoare triple {85354#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:56:48,394 INFO L290 TraceCheckUtils]: 12: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:56:48,395 INFO L290 TraceCheckUtils]: 13: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:56:48,395 INFO L290 TraceCheckUtils]: 14: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:56:48,395 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85354#true} {85354#true} #96#return; {85354#true} is VALID [2022-04-15 08:56:48,395 INFO L290 TraceCheckUtils]: 16: Hoare triple {85354#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85407#(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-15 08:56:48,395 INFO L290 TraceCheckUtils]: 17: Hoare triple {85407#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85407#(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-15 08:56:48,396 INFO L290 TraceCheckUtils]: 18: Hoare triple {85407#(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 !!(#t~post6 < 20);havoc #t~post6; {85407#(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-15 08:56:48,396 INFO L290 TraceCheckUtils]: 19: Hoare triple {85407#(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; {85417#(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-15 08:56:48,397 INFO L290 TraceCheckUtils]: 20: Hoare triple {85417#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85417#(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-15 08:56:48,397 INFO L290 TraceCheckUtils]: 21: Hoare triple {85417#(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 !!(#t~post7 < 20);havoc #t~post7; {85417#(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-15 08:56:48,397 INFO L290 TraceCheckUtils]: 22: Hoare triple {85417#(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); {85417#(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-15 08:56:48,398 INFO L290 TraceCheckUtils]: 23: Hoare triple {85417#(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; {85430#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,398 INFO L290 TraceCheckUtils]: 24: Hoare triple {85430#(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) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85430#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,398 INFO L290 TraceCheckUtils]: 25: Hoare triple {85430#(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) (= main_~q~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {85430#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,399 INFO L290 TraceCheckUtils]: 26: Hoare triple {85430#(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) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85440#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,399 INFO L290 TraceCheckUtils]: 27: Hoare triple {85440#(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) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85440#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,400 INFO L290 TraceCheckUtils]: 28: Hoare triple {85440#(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) (= main_~q~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {85440#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,400 INFO L290 TraceCheckUtils]: 29: Hoare triple {85440#(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) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85450#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,400 INFO L290 TraceCheckUtils]: 30: Hoare triple {85450#(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) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85450#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,401 INFO L290 TraceCheckUtils]: 31: Hoare triple {85450#(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) (= main_~q~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {85450#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,401 INFO L272 TraceCheckUtils]: 32: Hoare triple {85450#(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) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:56:48,401 INFO L290 TraceCheckUtils]: 33: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:56:48,401 INFO L290 TraceCheckUtils]: 34: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:56:48,401 INFO L290 TraceCheckUtils]: 35: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:56:48,402 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {85354#true} {85450#(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) (= main_~q~0 1))} #98#return; {85450#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,402 INFO L272 TraceCheckUtils]: 37: Hoare triple {85450#(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) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:56:48,402 INFO L290 TraceCheckUtils]: 38: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:56:48,402 INFO L290 TraceCheckUtils]: 39: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:56:48,402 INFO L290 TraceCheckUtils]: 40: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:56:48,403 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {85354#true} {85450#(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) (= main_~q~0 1))} #100#return; {85450#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,403 INFO L272 TraceCheckUtils]: 42: Hoare triple {85450#(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) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:56:48,403 INFO L290 TraceCheckUtils]: 43: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:56:48,403 INFO L290 TraceCheckUtils]: 44: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:56:48,403 INFO L290 TraceCheckUtils]: 45: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:56:48,404 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {85354#true} {85450#(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) (= main_~q~0 1))} #102#return; {85450#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,404 INFO L272 TraceCheckUtils]: 47: Hoare triple {85450#(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) (= main_~q~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:56:48,404 INFO L290 TraceCheckUtils]: 48: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:56:48,404 INFO L290 TraceCheckUtils]: 49: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:56:48,404 INFO L290 TraceCheckUtils]: 50: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:56:48,405 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {85354#true} {85450#(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) (= main_~q~0 1))} #104#return; {85450#(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) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,405 INFO L290 TraceCheckUtils]: 52: Hoare triple {85450#(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) (= main_~q~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {85520#(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) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,405 INFO L290 TraceCheckUtils]: 53: Hoare triple {85520#(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) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85520#(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) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,406 INFO L290 TraceCheckUtils]: 54: Hoare triple {85520#(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) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {85520#(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) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-15 08:56:48,406 INFO L272 TraceCheckUtils]: 55: Hoare triple {85520#(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) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:56:48,406 INFO L290 TraceCheckUtils]: 56: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:56:48,406 INFO L290 TraceCheckUtils]: 57: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:48,407 INFO L290 TraceCheckUtils]: 58: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:48,408 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85520#(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) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} #98#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:56:48,408 INFO L272 TraceCheckUtils]: 60: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= 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)); {85354#true} is VALID [2022-04-15 08:56:48,408 INFO L290 TraceCheckUtils]: 61: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:56:48,408 INFO L290 TraceCheckUtils]: 62: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:48,408 INFO L290 TraceCheckUtils]: 63: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:48,409 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:56:48,409 INFO L272 TraceCheckUtils]: 65: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= 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)); {85354#true} is VALID [2022-04-15 08:56:48,409 INFO L290 TraceCheckUtils]: 66: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:56:48,409 INFO L290 TraceCheckUtils]: 67: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:56:48,409 INFO L290 TraceCheckUtils]: 68: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:56:48,410 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {85354#true} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:56:48,410 INFO L272 TraceCheckUtils]: 70: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= 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)); {85354#true} is VALID [2022-04-15 08:56:48,410 INFO L290 TraceCheckUtils]: 71: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:56:48,411 INFO L290 TraceCheckUtils]: 72: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:48,411 INFO L290 TraceCheckUtils]: 73: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:56:48,412 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:56:48,412 INFO L290 TraceCheckUtils]: 75: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= 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); {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:56:48,413 INFO L290 TraceCheckUtils]: 76: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= 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; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:56:48,414 INFO L290 TraceCheckUtils]: 77: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:56:48,414 INFO L290 TraceCheckUtils]: 78: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:56:48,415 INFO L290 TraceCheckUtils]: 79: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 08:56:48,415 INFO L290 TraceCheckUtils]: 80: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ 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; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:56:48,415 INFO L290 TraceCheckUtils]: 81: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:56:48,416 INFO L290 TraceCheckUtils]: 82: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:56:48,416 INFO L290 TraceCheckUtils]: 83: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} assume !(0 != ~b~0); {85619#(and (= main_~r~0 0) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-15 08:56:48,417 INFO L272 TraceCheckUtils]: 84: Hoare triple {85619#(and (= main_~r~0 0) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 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)); {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:56:48,417 INFO L290 TraceCheckUtils]: 85: Hoare triple {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {85627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:56:48,418 INFO L290 TraceCheckUtils]: 86: Hoare triple {85627#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {85355#false} is VALID [2022-04-15 08:56:48,418 INFO L290 TraceCheckUtils]: 87: Hoare triple {85355#false} assume !false; {85355#false} is VALID [2022-04-15 08:56:48,418 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 52 proven. 35 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2022-04-15 08:56:48,418 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:58:03,301 INFO L290 TraceCheckUtils]: 87: Hoare triple {85355#false} assume !false; {85355#false} is VALID [2022-04-15 08:58:03,302 INFO L290 TraceCheckUtils]: 86: Hoare triple {85627#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {85355#false} is VALID [2022-04-15 08:58:03,302 INFO L290 TraceCheckUtils]: 85: Hoare triple {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {85627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:58:03,303 INFO L272 TraceCheckUtils]: 84: Hoare triple {85643#(= (+ (* 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)); {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:58:03,303 INFO L290 TraceCheckUtils]: 83: Hoare triple {85647#(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); {85643#(= (+ (* 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-15 08:58:03,304 INFO L290 TraceCheckUtils]: 82: Hoare triple {85647#(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 !!(#t~post6 < 20);havoc #t~post6; {85647#(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-15 08:58:03,304 INFO L290 TraceCheckUtils]: 81: Hoare triple {85647#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85647#(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-15 08:58:03,522 INFO L290 TraceCheckUtils]: 80: Hoare triple {85657#(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; {85647#(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-15 08:58:03,522 INFO L290 TraceCheckUtils]: 79: Hoare triple {85657#(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); {85657#(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-15 08:58:03,523 INFO L290 TraceCheckUtils]: 78: Hoare triple {85657#(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 !!(#t~post7 < 20);havoc #t~post7; {85657#(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-15 08:58:03,523 INFO L290 TraceCheckUtils]: 77: Hoare triple {85657#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85657#(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-15 08:58:03,575 INFO L290 TraceCheckUtils]: 76: Hoare triple {85670#(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; {85657#(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-15 08:58:03,575 INFO L290 TraceCheckUtils]: 75: Hoare triple {85670#(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); {85670#(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-15 08:58:03,576 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85677#(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; {85670#(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-15 08:58:03,577 INFO L290 TraceCheckUtils]: 73: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:58:03,577 INFO L290 TraceCheckUtils]: 72: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:58:03,577 INFO L290 TraceCheckUtils]: 71: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:58:03,577 INFO L272 TraceCheckUtils]: 70: Hoare triple {85677#(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)); {85354#true} is VALID [2022-04-15 08:58:03,578 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {85354#true} {85677#(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; {85677#(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-15 08:58:03,578 INFO L290 TraceCheckUtils]: 68: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:58:03,578 INFO L290 TraceCheckUtils]: 67: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:58:03,578 INFO L290 TraceCheckUtils]: 66: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:58:03,578 INFO L272 TraceCheckUtils]: 65: Hoare triple {85677#(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)); {85354#true} is VALID [2022-04-15 08:58:03,579 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85709#(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)))) (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))))} #100#return; {85677#(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-15 08:58:03,579 INFO L290 TraceCheckUtils]: 63: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:58:03,580 INFO L290 TraceCheckUtils]: 62: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:58:03,580 INFO L290 TraceCheckUtils]: 61: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:58:03,580 INFO L272 TraceCheckUtils]: 60: Hoare triple {85709#(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)))) (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)); {85354#true} is VALID [2022-04-15 08:58:03,581 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85725#(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)))) (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))))} #98#return; {85709#(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)))) (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-15 08:58:03,581 INFO L290 TraceCheckUtils]: 58: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:58:03,582 INFO L290 TraceCheckUtils]: 57: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:58:03,582 INFO L290 TraceCheckUtils]: 56: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 08:58:03,582 INFO L272 TraceCheckUtils]: 55: Hoare triple {85725#(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)))) (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)); {85354#true} is VALID [2022-04-15 08:58:03,583 INFO L290 TraceCheckUtils]: 54: Hoare triple {85725#(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)))) (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 !!(#t~post8 < 20);havoc #t~post8; {85725#(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)))) (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-15 08:58:03,583 INFO L290 TraceCheckUtils]: 53: Hoare triple {85725#(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)))) (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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85725#(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)))) (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-15 08:58:03,673 INFO L290 TraceCheckUtils]: 52: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {85725#(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)))) (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-15 08:58:03,674 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} #104#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} is VALID [2022-04-15 08:58:03,674 INFO L290 TraceCheckUtils]: 50: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:58:03,674 INFO L290 TraceCheckUtils]: 49: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:58:03,674 INFO L290 TraceCheckUtils]: 48: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:58:03,674 INFO L272 TraceCheckUtils]: 47: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:58:03,675 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} #102#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} is VALID [2022-04-15 08:58:03,675 INFO L290 TraceCheckUtils]: 45: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:58:03,675 INFO L290 TraceCheckUtils]: 44: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:58:03,675 INFO L290 TraceCheckUtils]: 43: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:58:03,675 INFO L272 TraceCheckUtils]: 42: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:58:03,676 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} #100#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} is VALID [2022-04-15 08:58:03,676 INFO L290 TraceCheckUtils]: 40: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:58:03,676 INFO L290 TraceCheckUtils]: 39: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:58:03,676 INFO L290 TraceCheckUtils]: 38: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:58:03,676 INFO L272 TraceCheckUtils]: 37: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:58:03,677 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} #98#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} is VALID [2022-04-15 08:58:03,677 INFO L290 TraceCheckUtils]: 35: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:58:03,677 INFO L290 TraceCheckUtils]: 34: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:58:03,677 INFO L290 TraceCheckUtils]: 33: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:58:03,677 INFO L272 TraceCheckUtils]: 32: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:58:03,678 INFO L290 TraceCheckUtils]: 31: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} assume !!(#t~post8 < 20);havoc #t~post8; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} is VALID [2022-04-15 08:58:03,678 INFO L290 TraceCheckUtils]: 30: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} is VALID [2022-04-15 08:58:03,679 INFO L290 TraceCheckUtils]: 29: Hoare triple {85817#(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)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* 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; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* 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_~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))))} is VALID [2022-04-15 08:58:03,680 INFO L290 TraceCheckUtils]: 28: Hoare triple {85817#(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)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* 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 !!(#t~post7 < 20);havoc #t~post7; {85817#(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)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* 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-15 08:58:03,680 INFO L290 TraceCheckUtils]: 27: Hoare triple {85817#(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)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* 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))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85817#(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)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* 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-15 08:58:03,682 INFO L290 TraceCheckUtils]: 26: Hoare triple {85354#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85817#(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)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* 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-15 08:58:03,682 INFO L290 TraceCheckUtils]: 25: Hoare triple {85354#true} assume !!(#t~post6 < 20);havoc #t~post6; {85354#true} is VALID [2022-04-15 08:58:03,682 INFO L290 TraceCheckUtils]: 24: Hoare triple {85354#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85354#true} is VALID [2022-04-15 08:58:03,682 INFO L290 TraceCheckUtils]: 23: Hoare triple {85354#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; {85354#true} is VALID [2022-04-15 08:58:03,682 INFO L290 TraceCheckUtils]: 22: Hoare triple {85354#true} assume !(~c~0 >= ~b~0); {85354#true} is VALID [2022-04-15 08:58:03,682 INFO L290 TraceCheckUtils]: 21: Hoare triple {85354#true} assume !!(#t~post7 < 20);havoc #t~post7; {85354#true} is VALID [2022-04-15 08:58:03,682 INFO L290 TraceCheckUtils]: 20: Hoare triple {85354#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85354#true} is VALID [2022-04-15 08:58:03,682 INFO L290 TraceCheckUtils]: 19: Hoare triple {85354#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L290 TraceCheckUtils]: 18: Hoare triple {85354#true} assume !!(#t~post6 < 20);havoc #t~post6; {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L290 TraceCheckUtils]: 17: Hoare triple {85354#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L290 TraceCheckUtils]: 16: Hoare triple {85354#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85354#true} {85354#true} #96#return; {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L290 TraceCheckUtils]: 14: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L290 TraceCheckUtils]: 13: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L290 TraceCheckUtils]: 12: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L272 TraceCheckUtils]: 11: Hoare triple {85354#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85354#true} {85354#true} #94#return; {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L290 TraceCheckUtils]: 9: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L290 TraceCheckUtils]: 8: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L290 TraceCheckUtils]: 7: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L272 TraceCheckUtils]: 6: Hoare triple {85354#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L290 TraceCheckUtils]: 5: Hoare triple {85354#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {85354#true} is VALID [2022-04-15 08:58:03,683 INFO L272 TraceCheckUtils]: 4: Hoare triple {85354#true} call #t~ret9 := main(); {85354#true} is VALID [2022-04-15 08:58:03,684 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85354#true} {85354#true} #108#return; {85354#true} is VALID [2022-04-15 08:58:03,684 INFO L290 TraceCheckUtils]: 2: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-15 08:58:03,684 INFO L290 TraceCheckUtils]: 1: Hoare triple {85354#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);~counter~0 := 0; {85354#true} is VALID [2022-04-15 08:58:03,684 INFO L272 TraceCheckUtils]: 0: Hoare triple {85354#true} call ULTIMATE.init(); {85354#true} is VALID [2022-04-15 08:58:03,684 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 65 proven. 19 refuted. 0 times theorem prover too weak. 74 trivial. 0 not checked. [2022-04-15 08:58:03,684 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:58:03,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [742819450] [2022-04-15 08:58:03,684 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:58:03,685 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [936869472] [2022-04-15 08:58:03,685 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [936869472] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:58:03,685 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:58:03,685 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 15] total 26 [2022-04-15 08:58:03,685 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:58:03,685 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [848866461] [2022-04-15 08:58:03,685 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [848866461] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:58:03,685 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:58:03,685 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-15 08:58:03,685 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1300661409] [2022-04-15 08:58:03,685 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:58:03,686 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 88 [2022-04-15 08:58:03,686 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:58:03,686 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:03,756 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:03,756 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-15 08:58:03,756 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:58:03,757 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-15 08:58:03,757 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=113, Invalid=537, Unknown=0, NotChecked=0, Total=650 [2022-04-15 08:58:03,757 INFO L87 Difference]: Start difference. First operand 957 states and 1270 transitions. Second operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:09,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:09,832 INFO L93 Difference]: Finished difference Result 1073 states and 1433 transitions. [2022-04-15 08:58:09,832 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-15 08:58:09,832 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 88 [2022-04-15 08:58:09,832 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:58:09,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:09,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-15 08:58:09,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:09,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-15 08:58:09,835 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 202 transitions. [2022-04-15 08:58:10,075 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 202 edges. 202 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:10,123 INFO L225 Difference]: With dead ends: 1073 [2022-04-15 08:58:10,123 INFO L226 Difference]: Without dead ends: 1070 [2022-04-15 08:58:10,124 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 180 GetRequests, 150 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 150 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=154, Invalid=776, Unknown=0, NotChecked=0, Total=930 [2022-04-15 08:58:10,124 INFO L913 BasicCegarLoop]: 75 mSDtfsCounter, 91 mSDsluCounter, 551 mSDsCounter, 0 mSdLazyCounter, 1071 mSolverCounterSat, 75 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 111 SdHoareTripleChecker+Valid, 626 SdHoareTripleChecker+Invalid, 1146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 75 IncrementalHoareTripleChecker+Valid, 1071 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-04-15 08:58:10,124 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [111 Valid, 626 Invalid, 1146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [75 Valid, 1071 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-04-15 08:58:10,125 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1070 states. [2022-04-15 08:58:12,479 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1070 to 1027. [2022-04-15 08:58:12,479 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:58:12,480 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:12,481 INFO L74 IsIncluded]: Start isIncluded. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:12,482 INFO L87 Difference]: Start difference. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:12,513 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:12,513 INFO L93 Difference]: Finished difference Result 1070 states and 1428 transitions. [2022-04-15 08:58:12,513 INFO L276 IsEmpty]: Start isEmpty. Operand 1070 states and 1428 transitions. [2022-04-15 08:58:12,515 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:58:12,515 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:58:12,516 INFO L74 IsIncluded]: Start isIncluded. First operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1070 states. [2022-04-15 08:58:12,517 INFO L87 Difference]: Start difference. First operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1070 states. [2022-04-15 08:58:12,549 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:12,549 INFO L93 Difference]: Finished difference Result 1070 states and 1428 transitions. [2022-04-15 08:58:12,549 INFO L276 IsEmpty]: Start isEmpty. Operand 1070 states and 1428 transitions. [2022-04-15 08:58:12,551 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:58:12,551 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:58:12,551 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:58:12,551 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:58:12,552 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:12,596 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1027 states to 1027 states and 1375 transitions. [2022-04-15 08:58:12,597 INFO L78 Accepts]: Start accepts. Automaton has 1027 states and 1375 transitions. Word has length 88 [2022-04-15 08:58:12,597 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:58:12,597 INFO L478 AbstractCegarLoop]: Abstraction has 1027 states and 1375 transitions. [2022-04-15 08:58:12,597 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:12,597 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1027 states and 1375 transitions. [2022-04-15 08:58:15,343 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1375 edges. 1375 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:15,343 INFO L276 IsEmpty]: Start isEmpty. Operand 1027 states and 1375 transitions. [2022-04-15 08:58:15,344 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-15 08:58:15,344 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:58:15,344 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:58:15,360 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Forceful destruction successful, exit code 0 [2022-04-15 08:58:15,559 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 31 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable30 [2022-04-15 08:58:15,559 INFO L403 AbstractCegarLoop]: === Iteration 32 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:58:15,560 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:58:15,560 INFO L85 PathProgramCache]: Analyzing trace with hash 1791236545, now seen corresponding path program 5 times [2022-04-15 08:58:15,560 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:58:15,560 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1210755847] [2022-04-15 08:58:15,560 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:58:15,560 INFO L85 PathProgramCache]: Analyzing trace with hash 1791236545, now seen corresponding path program 6 times [2022-04-15 08:58:15,560 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:58:15,560 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [519889107] [2022-04-15 08:58:15,560 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:58:15,560 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:58:15,581 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:58:15,582 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [840616270] [2022-04-15 08:58:15,582 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 08:58:15,582 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:58:15,582 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:58:15,583 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:58:15,583 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2022-04-15 08:58:15,650 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-15 08:58:15,650 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:58:15,651 INFO L263 TraceCheckSpWp]: Trace formula consists of 271 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-15 08:58:15,670 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:58:15,672 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:58:16,065 INFO L272 TraceCheckUtils]: 0: Hoare triple {92257#true} call ULTIMATE.init(); {92257#true} is VALID [2022-04-15 08:58:16,065 INFO L290 TraceCheckUtils]: 1: Hoare triple {92257#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);~counter~0 := 0; {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,066 INFO L290 TraceCheckUtils]: 2: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,066 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92265#(<= ~counter~0 0)} {92257#true} #108#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,066 INFO L272 TraceCheckUtils]: 4: Hoare triple {92265#(<= ~counter~0 0)} call #t~ret9 := main(); {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,066 INFO L290 TraceCheckUtils]: 5: Hoare triple {92265#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,067 INFO L272 TraceCheckUtils]: 6: Hoare triple {92265#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,067 INFO L290 TraceCheckUtils]: 7: Hoare triple {92265#(<= ~counter~0 0)} ~cond := #in~cond; {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,067 INFO L290 TraceCheckUtils]: 8: Hoare triple {92265#(<= ~counter~0 0)} assume !(0 == ~cond); {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,068 INFO L290 TraceCheckUtils]: 9: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,068 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92265#(<= ~counter~0 0)} {92265#(<= ~counter~0 0)} #94#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,068 INFO L272 TraceCheckUtils]: 11: Hoare triple {92265#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,069 INFO L290 TraceCheckUtils]: 12: Hoare triple {92265#(<= ~counter~0 0)} ~cond := #in~cond; {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,069 INFO L290 TraceCheckUtils]: 13: Hoare triple {92265#(<= ~counter~0 0)} assume !(0 == ~cond); {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,069 INFO L290 TraceCheckUtils]: 14: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,069 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92265#(<= ~counter~0 0)} {92265#(<= ~counter~0 0)} #96#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,070 INFO L290 TraceCheckUtils]: 16: Hoare triple {92265#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92265#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:16,071 INFO L290 TraceCheckUtils]: 17: Hoare triple {92265#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92314#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:16,072 INFO L290 TraceCheckUtils]: 18: Hoare triple {92314#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {92314#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:16,072 INFO L290 TraceCheckUtils]: 19: Hoare triple {92314#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92314#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:16,073 INFO L290 TraceCheckUtils]: 20: Hoare triple {92314#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92324#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:16,073 INFO L290 TraceCheckUtils]: 21: Hoare triple {92324#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {92324#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:16,073 INFO L290 TraceCheckUtils]: 22: Hoare triple {92324#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92324#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:16,074 INFO L290 TraceCheckUtils]: 23: Hoare triple {92324#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,074 INFO L290 TraceCheckUtils]: 24: Hoare triple {92334#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,075 INFO L272 TraceCheckUtils]: 25: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,075 INFO L290 TraceCheckUtils]: 26: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,075 INFO L290 TraceCheckUtils]: 27: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,075 INFO L290 TraceCheckUtils]: 28: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,076 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #98#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,076 INFO L272 TraceCheckUtils]: 30: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,077 INFO L290 TraceCheckUtils]: 31: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,077 INFO L290 TraceCheckUtils]: 32: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,077 INFO L290 TraceCheckUtils]: 33: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,078 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #100#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,078 INFO L272 TraceCheckUtils]: 35: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,078 INFO L290 TraceCheckUtils]: 36: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,079 INFO L290 TraceCheckUtils]: 37: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,079 INFO L290 TraceCheckUtils]: 38: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,079 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #102#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,080 INFO L272 TraceCheckUtils]: 40: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,080 INFO L290 TraceCheckUtils]: 41: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,080 INFO L290 TraceCheckUtils]: 42: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,080 INFO L290 TraceCheckUtils]: 43: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,081 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #104#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,081 INFO L290 TraceCheckUtils]: 45: Hoare triple {92334#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,081 INFO L290 TraceCheckUtils]: 46: Hoare triple {92334#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92334#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:16,082 INFO L290 TraceCheckUtils]: 47: Hoare triple {92334#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92407#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:16,083 INFO L290 TraceCheckUtils]: 48: Hoare triple {92407#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {92407#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:16,083 INFO L290 TraceCheckUtils]: 49: Hoare triple {92407#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {92407#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:16,083 INFO L290 TraceCheckUtils]: 50: Hoare triple {92407#(<= ~counter~0 4)} ~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; {92407#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:16,084 INFO L290 TraceCheckUtils]: 51: Hoare triple {92407#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92420#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:16,084 INFO L290 TraceCheckUtils]: 52: Hoare triple {92420#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {92420#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:16,084 INFO L290 TraceCheckUtils]: 53: Hoare triple {92420#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92420#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:16,085 INFO L290 TraceCheckUtils]: 54: Hoare triple {92420#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92430#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:16,085 INFO L290 TraceCheckUtils]: 55: Hoare triple {92430#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {92430#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:16,086 INFO L290 TraceCheckUtils]: 56: Hoare triple {92430#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92430#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:16,086 INFO L290 TraceCheckUtils]: 57: Hoare triple {92430#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,087 INFO L290 TraceCheckUtils]: 58: Hoare triple {92440#(<= ~counter~0 7)} assume !!(#t~post8 < 20);havoc #t~post8; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,087 INFO L272 TraceCheckUtils]: 59: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,087 INFO L290 TraceCheckUtils]: 60: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,088 INFO L290 TraceCheckUtils]: 61: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,088 INFO L290 TraceCheckUtils]: 62: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,088 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #98#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,089 INFO L272 TraceCheckUtils]: 64: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,089 INFO L290 TraceCheckUtils]: 65: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,089 INFO L290 TraceCheckUtils]: 66: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,090 INFO L290 TraceCheckUtils]: 67: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,090 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #100#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,091 INFO L272 TraceCheckUtils]: 69: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,091 INFO L290 TraceCheckUtils]: 70: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,091 INFO L290 TraceCheckUtils]: 71: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,091 INFO L290 TraceCheckUtils]: 72: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,092 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #102#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,092 INFO L272 TraceCheckUtils]: 74: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,092 INFO L290 TraceCheckUtils]: 75: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,093 INFO L290 TraceCheckUtils]: 76: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,093 INFO L290 TraceCheckUtils]: 77: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,093 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #104#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,094 INFO L290 TraceCheckUtils]: 79: Hoare triple {92440#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,094 INFO L290 TraceCheckUtils]: 80: Hoare triple {92440#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92440#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:16,095 INFO L290 TraceCheckUtils]: 81: Hoare triple {92440#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92513#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:16,095 INFO L290 TraceCheckUtils]: 82: Hoare triple {92513#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {92513#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:16,095 INFO L290 TraceCheckUtils]: 83: Hoare triple {92513#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {92513#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:16,096 INFO L290 TraceCheckUtils]: 84: Hoare triple {92513#(<= ~counter~0 8)} ~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; {92513#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:16,096 INFO L290 TraceCheckUtils]: 85: Hoare triple {92513#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92526#(<= |main_#t~post6| 8)} is VALID [2022-04-15 08:58:16,096 INFO L290 TraceCheckUtils]: 86: Hoare triple {92526#(<= |main_#t~post6| 8)} assume !(#t~post6 < 20);havoc #t~post6; {92258#false} is VALID [2022-04-15 08:58:16,096 INFO L272 TraceCheckUtils]: 87: Hoare triple {92258#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)); {92258#false} is VALID [2022-04-15 08:58:16,096 INFO L290 TraceCheckUtils]: 88: Hoare triple {92258#false} ~cond := #in~cond; {92258#false} is VALID [2022-04-15 08:58:16,097 INFO L290 TraceCheckUtils]: 89: Hoare triple {92258#false} assume 0 == ~cond; {92258#false} is VALID [2022-04-15 08:58:16,097 INFO L290 TraceCheckUtils]: 90: Hoare triple {92258#false} assume !false; {92258#false} is VALID [2022-04-15 08:58:16,097 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 98 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-15 08:58:16,097 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:58:16,510 INFO L290 TraceCheckUtils]: 90: Hoare triple {92258#false} assume !false; {92258#false} is VALID [2022-04-15 08:58:16,510 INFO L290 TraceCheckUtils]: 89: Hoare triple {92258#false} assume 0 == ~cond; {92258#false} is VALID [2022-04-15 08:58:16,510 INFO L290 TraceCheckUtils]: 88: Hoare triple {92258#false} ~cond := #in~cond; {92258#false} is VALID [2022-04-15 08:58:16,510 INFO L272 TraceCheckUtils]: 87: Hoare triple {92258#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)); {92258#false} is VALID [2022-04-15 08:58:16,513 INFO L290 TraceCheckUtils]: 86: Hoare triple {92554#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {92258#false} is VALID [2022-04-15 08:58:16,513 INFO L290 TraceCheckUtils]: 85: Hoare triple {92558#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92554#(< |main_#t~post6| 20)} is VALID [2022-04-15 08:58:16,513 INFO L290 TraceCheckUtils]: 84: Hoare triple {92558#(< ~counter~0 20)} ~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; {92558#(< ~counter~0 20)} is VALID [2022-04-15 08:58:16,514 INFO L290 TraceCheckUtils]: 83: Hoare triple {92558#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {92558#(< ~counter~0 20)} is VALID [2022-04-15 08:58:16,514 INFO L290 TraceCheckUtils]: 82: Hoare triple {92558#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {92558#(< ~counter~0 20)} is VALID [2022-04-15 08:58:16,515 INFO L290 TraceCheckUtils]: 81: Hoare triple {92571#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92558#(< ~counter~0 20)} is VALID [2022-04-15 08:58:16,516 INFO L290 TraceCheckUtils]: 80: Hoare triple {92571#(< ~counter~0 19)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92571#(< ~counter~0 19)} is VALID [2022-04-15 08:58:16,516 INFO L290 TraceCheckUtils]: 79: Hoare triple {92571#(< ~counter~0 19)} assume !(~c~0 >= 2 * ~v~0); {92571#(< ~counter~0 19)} is VALID [2022-04-15 08:58:16,516 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {92257#true} {92571#(< ~counter~0 19)} #104#return; {92571#(< ~counter~0 19)} is VALID [2022-04-15 08:58:16,516 INFO L290 TraceCheckUtils]: 77: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-15 08:58:16,516 INFO L290 TraceCheckUtils]: 76: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-15 08:58:16,517 INFO L290 TraceCheckUtils]: 75: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-15 08:58:16,517 INFO L272 TraceCheckUtils]: 74: Hoare triple {92571#(< ~counter~0 19)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92257#true} is VALID [2022-04-15 08:58:16,517 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {92257#true} {92571#(< ~counter~0 19)} #102#return; {92571#(< ~counter~0 19)} is VALID [2022-04-15 08:58:16,517 INFO L290 TraceCheckUtils]: 72: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-15 08:58:16,517 INFO L290 TraceCheckUtils]: 71: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-15 08:58:16,517 INFO L290 TraceCheckUtils]: 70: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-15 08:58:16,517 INFO L272 TraceCheckUtils]: 69: Hoare triple {92571#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92257#true} is VALID [2022-04-15 08:58:16,518 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {92257#true} {92571#(< ~counter~0 19)} #100#return; {92571#(< ~counter~0 19)} is VALID [2022-04-15 08:58:16,518 INFO L290 TraceCheckUtils]: 67: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-15 08:58:16,518 INFO L290 TraceCheckUtils]: 66: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-15 08:58:16,518 INFO L290 TraceCheckUtils]: 65: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-15 08:58:16,518 INFO L272 TraceCheckUtils]: 64: Hoare triple {92571#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92257#true} is VALID [2022-04-15 08:58:16,519 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {92257#true} {92571#(< ~counter~0 19)} #98#return; {92571#(< ~counter~0 19)} is VALID [2022-04-15 08:58:16,519 INFO L290 TraceCheckUtils]: 62: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-15 08:58:16,519 INFO L290 TraceCheckUtils]: 61: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-15 08:58:16,519 INFO L290 TraceCheckUtils]: 60: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-15 08:58:16,519 INFO L272 TraceCheckUtils]: 59: Hoare triple {92571#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92257#true} is VALID [2022-04-15 08:58:16,519 INFO L290 TraceCheckUtils]: 58: Hoare triple {92571#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {92571#(< ~counter~0 19)} is VALID [2022-04-15 08:58:16,520 INFO L290 TraceCheckUtils]: 57: Hoare triple {92644#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92571#(< ~counter~0 19)} is VALID [2022-04-15 08:58:16,520 INFO L290 TraceCheckUtils]: 56: Hoare triple {92644#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92644#(< ~counter~0 18)} is VALID [2022-04-15 08:58:16,520 INFO L290 TraceCheckUtils]: 55: Hoare triple {92644#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {92644#(< ~counter~0 18)} is VALID [2022-04-15 08:58:16,521 INFO L290 TraceCheckUtils]: 54: Hoare triple {92654#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92644#(< ~counter~0 18)} is VALID [2022-04-15 08:58:16,521 INFO L290 TraceCheckUtils]: 53: Hoare triple {92654#(< ~counter~0 17)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92654#(< ~counter~0 17)} is VALID [2022-04-15 08:58:16,522 INFO L290 TraceCheckUtils]: 52: Hoare triple {92654#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {92654#(< ~counter~0 17)} is VALID [2022-04-15 08:58:16,522 INFO L290 TraceCheckUtils]: 51: Hoare triple {92664#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92654#(< ~counter~0 17)} is VALID [2022-04-15 08:58:16,523 INFO L290 TraceCheckUtils]: 50: Hoare triple {92664#(< ~counter~0 16)} ~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; {92664#(< ~counter~0 16)} is VALID [2022-04-15 08:58:16,523 INFO L290 TraceCheckUtils]: 49: Hoare triple {92664#(< ~counter~0 16)} assume !(~c~0 >= ~b~0); {92664#(< ~counter~0 16)} is VALID [2022-04-15 08:58:16,523 INFO L290 TraceCheckUtils]: 48: Hoare triple {92664#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {92664#(< ~counter~0 16)} is VALID [2022-04-15 08:58:16,524 INFO L290 TraceCheckUtils]: 47: Hoare triple {92677#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92664#(< ~counter~0 16)} is VALID [2022-04-15 08:58:16,524 INFO L290 TraceCheckUtils]: 46: Hoare triple {92677#(< ~counter~0 15)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92677#(< ~counter~0 15)} is VALID [2022-04-15 08:58:16,525 INFO L290 TraceCheckUtils]: 45: Hoare triple {92677#(< ~counter~0 15)} assume !(~c~0 >= 2 * ~v~0); {92677#(< ~counter~0 15)} is VALID [2022-04-15 08:58:16,525 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {92257#true} {92677#(< ~counter~0 15)} #104#return; {92677#(< ~counter~0 15)} is VALID [2022-04-15 08:58:16,525 INFO L290 TraceCheckUtils]: 43: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-15 08:58:16,525 INFO L290 TraceCheckUtils]: 42: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-15 08:58:16,525 INFO L290 TraceCheckUtils]: 41: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-15 08:58:16,525 INFO L272 TraceCheckUtils]: 40: Hoare triple {92677#(< ~counter~0 15)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92257#true} is VALID [2022-04-15 08:58:16,526 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {92257#true} {92677#(< ~counter~0 15)} #102#return; {92677#(< ~counter~0 15)} is VALID [2022-04-15 08:58:16,526 INFO L290 TraceCheckUtils]: 38: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-15 08:58:16,526 INFO L290 TraceCheckUtils]: 37: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-15 08:58:16,526 INFO L290 TraceCheckUtils]: 36: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-15 08:58:16,526 INFO L272 TraceCheckUtils]: 35: Hoare triple {92677#(< ~counter~0 15)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92257#true} is VALID [2022-04-15 08:58:16,526 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {92257#true} {92677#(< ~counter~0 15)} #100#return; {92677#(< ~counter~0 15)} is VALID [2022-04-15 08:58:16,527 INFO L290 TraceCheckUtils]: 33: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-15 08:58:16,527 INFO L290 TraceCheckUtils]: 32: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-15 08:58:16,527 INFO L290 TraceCheckUtils]: 31: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-15 08:58:16,527 INFO L272 TraceCheckUtils]: 30: Hoare triple {92677#(< ~counter~0 15)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92257#true} is VALID [2022-04-15 08:58:16,527 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {92257#true} {92677#(< ~counter~0 15)} #98#return; {92677#(< ~counter~0 15)} is VALID [2022-04-15 08:58:16,527 INFO L290 TraceCheckUtils]: 28: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-15 08:58:16,527 INFO L290 TraceCheckUtils]: 27: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-15 08:58:16,527 INFO L290 TraceCheckUtils]: 26: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-15 08:58:16,528 INFO L272 TraceCheckUtils]: 25: Hoare triple {92677#(< ~counter~0 15)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92257#true} is VALID [2022-04-15 08:58:16,528 INFO L290 TraceCheckUtils]: 24: Hoare triple {92677#(< ~counter~0 15)} assume !!(#t~post8 < 20);havoc #t~post8; {92677#(< ~counter~0 15)} is VALID [2022-04-15 08:58:16,529 INFO L290 TraceCheckUtils]: 23: Hoare triple {92750#(< ~counter~0 14)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92677#(< ~counter~0 15)} is VALID [2022-04-15 08:58:16,529 INFO L290 TraceCheckUtils]: 22: Hoare triple {92750#(< ~counter~0 14)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92750#(< ~counter~0 14)} is VALID [2022-04-15 08:58:16,529 INFO L290 TraceCheckUtils]: 21: Hoare triple {92750#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {92750#(< ~counter~0 14)} is VALID [2022-04-15 08:58:16,530 INFO L290 TraceCheckUtils]: 20: Hoare triple {92760#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92750#(< ~counter~0 14)} is VALID [2022-04-15 08:58:16,530 INFO L290 TraceCheckUtils]: 19: Hoare triple {92760#(< ~counter~0 13)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92760#(< ~counter~0 13)} is VALID [2022-04-15 08:58:16,530 INFO L290 TraceCheckUtils]: 18: Hoare triple {92760#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {92760#(< ~counter~0 13)} is VALID [2022-04-15 08:58:16,531 INFO L290 TraceCheckUtils]: 17: Hoare triple {92770#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92760#(< ~counter~0 13)} is VALID [2022-04-15 08:58:16,531 INFO L290 TraceCheckUtils]: 16: Hoare triple {92770#(< ~counter~0 12)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92770#(< ~counter~0 12)} is VALID [2022-04-15 08:58:16,532 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92257#true} {92770#(< ~counter~0 12)} #96#return; {92770#(< ~counter~0 12)} is VALID [2022-04-15 08:58:16,532 INFO L290 TraceCheckUtils]: 14: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-15 08:58:16,532 INFO L290 TraceCheckUtils]: 13: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-15 08:58:16,532 INFO L290 TraceCheckUtils]: 12: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-15 08:58:16,532 INFO L272 TraceCheckUtils]: 11: Hoare triple {92770#(< ~counter~0 12)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92257#true} is VALID [2022-04-15 08:58:16,532 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92257#true} {92770#(< ~counter~0 12)} #94#return; {92770#(< ~counter~0 12)} is VALID [2022-04-15 08:58:16,532 INFO L290 TraceCheckUtils]: 9: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-15 08:58:16,533 INFO L290 TraceCheckUtils]: 8: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-15 08:58:16,533 INFO L290 TraceCheckUtils]: 7: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-15 08:58:16,533 INFO L272 TraceCheckUtils]: 6: Hoare triple {92770#(< ~counter~0 12)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92257#true} is VALID [2022-04-15 08:58:16,533 INFO L290 TraceCheckUtils]: 5: Hoare triple {92770#(< ~counter~0 12)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {92770#(< ~counter~0 12)} is VALID [2022-04-15 08:58:16,533 INFO L272 TraceCheckUtils]: 4: Hoare triple {92770#(< ~counter~0 12)} call #t~ret9 := main(); {92770#(< ~counter~0 12)} is VALID [2022-04-15 08:58:16,533 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92770#(< ~counter~0 12)} {92257#true} #108#return; {92770#(< ~counter~0 12)} is VALID [2022-04-15 08:58:16,534 INFO L290 TraceCheckUtils]: 2: Hoare triple {92770#(< ~counter~0 12)} assume true; {92770#(< ~counter~0 12)} is VALID [2022-04-15 08:58:16,534 INFO L290 TraceCheckUtils]: 1: Hoare triple {92257#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);~counter~0 := 0; {92770#(< ~counter~0 12)} is VALID [2022-04-15 08:58:16,534 INFO L272 TraceCheckUtils]: 0: Hoare triple {92257#true} call ULTIMATE.init(); {92257#true} is VALID [2022-04-15 08:58:16,534 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 34 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-15 08:58:16,535 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:58:16,535 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [519889107] [2022-04-15 08:58:16,535 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:58:16,535 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [840616270] [2022-04-15 08:58:16,535 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [840616270] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:58:16,535 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:58:16,535 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-15 08:58:16,535 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:58:16,535 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1210755847] [2022-04-15 08:58:16,535 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1210755847] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:58:16,535 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:58:16,535 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 08:58:16,535 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1527554898] [2022-04-15 08:58:16,536 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:58:16,536 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 91 [2022-04-15 08:58:16,536 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:58:16,536 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:16,594 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:16,595 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 08:58:16,595 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:58:16,595 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 08:58:16,596 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-15 08:58:16,596 INFO L87 Difference]: Start difference. First operand 1027 states and 1375 transitions. Second operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:19,623 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:19,623 INFO L93 Difference]: Finished difference Result 1062 states and 1410 transitions. [2022-04-15 08:58:19,623 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-15 08:58:19,623 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 91 [2022-04-15 08:58:19,623 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:58:19,623 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:19,625 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 208 transitions. [2022-04-15 08:58:19,625 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:19,626 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 208 transitions. [2022-04-15 08:58:19,626 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 208 transitions. [2022-04-15 08:58:19,811 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 208 edges. 208 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:19,862 INFO L225 Difference]: With dead ends: 1062 [2022-04-15 08:58:19,863 INFO L226 Difference]: Without dead ends: 1055 [2022-04-15 08:58:19,863 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 161 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=312, Invalid=444, Unknown=0, NotChecked=0, Total=756 [2022-04-15 08:58:19,863 INFO L913 BasicCegarLoop]: 69 mSDtfsCounter, 157 mSDsluCounter, 227 mSDsCounter, 0 mSdLazyCounter, 119 mSolverCounterSat, 101 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 157 SdHoareTripleChecker+Valid, 296 SdHoareTripleChecker+Invalid, 220 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 101 IncrementalHoareTripleChecker+Valid, 119 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 08:58:19,863 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [157 Valid, 296 Invalid, 220 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [101 Valid, 119 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 08:58:19,864 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1055 states. [2022-04-15 08:58:22,214 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1055 to 1038. [2022-04-15 08:58:22,214 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:58:22,215 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:22,216 INFO L74 IsIncluded]: Start isIncluded. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:22,216 INFO L87 Difference]: Start difference. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:22,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:22,248 INFO L93 Difference]: Finished difference Result 1055 states and 1401 transitions. [2022-04-15 08:58:22,248 INFO L276 IsEmpty]: Start isEmpty. Operand 1055 states and 1401 transitions. [2022-04-15 08:58:22,250 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:58:22,250 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:58:22,251 INFO L74 IsIncluded]: Start isIncluded. First operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1055 states. [2022-04-15 08:58:22,252 INFO L87 Difference]: Start difference. First operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1055 states. [2022-04-15 08:58:22,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:22,291 INFO L93 Difference]: Finished difference Result 1055 states and 1401 transitions. [2022-04-15 08:58:22,292 INFO L276 IsEmpty]: Start isEmpty. Operand 1055 states and 1401 transitions. [2022-04-15 08:58:22,293 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:58:22,293 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:58:22,293 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:58:22,293 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:58:22,294 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:22,340 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1038 states to 1038 states and 1386 transitions. [2022-04-15 08:58:22,341 INFO L78 Accepts]: Start accepts. Automaton has 1038 states and 1386 transitions. Word has length 91 [2022-04-15 08:58:22,341 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:58:22,341 INFO L478 AbstractCegarLoop]: Abstraction has 1038 states and 1386 transitions. [2022-04-15 08:58:22,341 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:22,341 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1038 states and 1386 transitions. [2022-04-15 08:58:25,254 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1386 edges. 1386 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:25,254 INFO L276 IsEmpty]: Start isEmpty. Operand 1038 states and 1386 transitions. [2022-04-15 08:58:25,255 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 94 [2022-04-15 08:58:25,255 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:58:25,255 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:58:25,272 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Forceful destruction successful, exit code 0 [2022-04-15 08:58:25,471 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31,32 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:58:25,471 INFO L403 AbstractCegarLoop]: === Iteration 33 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:58:25,472 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:58:25,472 INFO L85 PathProgramCache]: Analyzing trace with hash -554609469, now seen corresponding path program 1 times [2022-04-15 08:58:25,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:58:25,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1561269840] [2022-04-15 08:58:25,472 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:58:25,472 INFO L85 PathProgramCache]: Analyzing trace with hash -554609469, now seen corresponding path program 2 times [2022-04-15 08:58:25,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:58:25,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1023264675] [2022-04-15 08:58:25,472 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:58:25,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:58:25,483 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:58:25,484 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1079190243] [2022-04-15 08:58:25,484 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:58:25,484 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:58:25,484 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:58:25,485 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:58:25,486 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Waiting until timeout for monitored process [2022-04-15 08:58:25,538 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:58:25,538 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:58:25,539 INFO L263 TraceCheckSpWp]: Trace formula consists of 290 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-15 08:58:25,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:58:25,557 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:58:25,923 INFO L272 TraceCheckUtils]: 0: Hoare triple {99146#true} call ULTIMATE.init(); {99146#true} is VALID [2022-04-15 08:58:25,924 INFO L290 TraceCheckUtils]: 1: Hoare triple {99146#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);~counter~0 := 0; {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,924 INFO L290 TraceCheckUtils]: 2: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,924 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99154#(<= ~counter~0 0)} {99146#true} #108#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,925 INFO L272 TraceCheckUtils]: 4: Hoare triple {99154#(<= ~counter~0 0)} call #t~ret9 := main(); {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,925 INFO L290 TraceCheckUtils]: 5: Hoare triple {99154#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,925 INFO L272 TraceCheckUtils]: 6: Hoare triple {99154#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,926 INFO L290 TraceCheckUtils]: 7: Hoare triple {99154#(<= ~counter~0 0)} ~cond := #in~cond; {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,926 INFO L290 TraceCheckUtils]: 8: Hoare triple {99154#(<= ~counter~0 0)} assume !(0 == ~cond); {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,926 INFO L290 TraceCheckUtils]: 9: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,926 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99154#(<= ~counter~0 0)} {99154#(<= ~counter~0 0)} #94#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,927 INFO L272 TraceCheckUtils]: 11: Hoare triple {99154#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,927 INFO L290 TraceCheckUtils]: 12: Hoare triple {99154#(<= ~counter~0 0)} ~cond := #in~cond; {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,927 INFO L290 TraceCheckUtils]: 13: Hoare triple {99154#(<= ~counter~0 0)} assume !(0 == ~cond); {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,928 INFO L290 TraceCheckUtils]: 14: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,928 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99154#(<= ~counter~0 0)} {99154#(<= ~counter~0 0)} #96#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,928 INFO L290 TraceCheckUtils]: 16: Hoare triple {99154#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {99154#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:25,930 INFO L290 TraceCheckUtils]: 17: Hoare triple {99154#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99203#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:25,930 INFO L290 TraceCheckUtils]: 18: Hoare triple {99203#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {99203#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:25,931 INFO L290 TraceCheckUtils]: 19: Hoare triple {99203#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99203#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:25,931 INFO L290 TraceCheckUtils]: 20: Hoare triple {99203#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99213#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:25,932 INFO L290 TraceCheckUtils]: 21: Hoare triple {99213#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {99213#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:25,932 INFO L290 TraceCheckUtils]: 22: Hoare triple {99213#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {99213#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:25,932 INFO L290 TraceCheckUtils]: 23: Hoare triple {99213#(<= ~counter~0 2)} ~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; {99213#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:25,933 INFO L290 TraceCheckUtils]: 24: Hoare triple {99213#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99226#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:25,933 INFO L290 TraceCheckUtils]: 25: Hoare triple {99226#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {99226#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:25,934 INFO L290 TraceCheckUtils]: 26: Hoare triple {99226#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99226#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:25,934 INFO L290 TraceCheckUtils]: 27: Hoare triple {99226#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99236#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:25,935 INFO L290 TraceCheckUtils]: 28: Hoare triple {99236#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {99236#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:25,935 INFO L290 TraceCheckUtils]: 29: Hoare triple {99236#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {99236#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:25,936 INFO L290 TraceCheckUtils]: 30: Hoare triple {99236#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,936 INFO L290 TraceCheckUtils]: 31: Hoare triple {99246#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,936 INFO L272 TraceCheckUtils]: 32: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,937 INFO L290 TraceCheckUtils]: 33: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,937 INFO L290 TraceCheckUtils]: 34: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,937 INFO L290 TraceCheckUtils]: 35: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,938 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #98#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,938 INFO L272 TraceCheckUtils]: 37: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,938 INFO L290 TraceCheckUtils]: 38: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,939 INFO L290 TraceCheckUtils]: 39: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,939 INFO L290 TraceCheckUtils]: 40: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,939 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #100#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,940 INFO L272 TraceCheckUtils]: 42: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,940 INFO L290 TraceCheckUtils]: 43: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,940 INFO L290 TraceCheckUtils]: 44: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,941 INFO L290 TraceCheckUtils]: 45: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,941 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #102#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,941 INFO L272 TraceCheckUtils]: 47: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,942 INFO L290 TraceCheckUtils]: 48: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,942 INFO L290 TraceCheckUtils]: 49: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,942 INFO L290 TraceCheckUtils]: 50: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,943 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #104#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,943 INFO L290 TraceCheckUtils]: 52: Hoare triple {99246#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {99246#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:25,944 INFO L290 TraceCheckUtils]: 53: Hoare triple {99246#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,944 INFO L290 TraceCheckUtils]: 54: Hoare triple {99316#(<= ~counter~0 6)} assume !!(#t~post8 < 20);havoc #t~post8; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,944 INFO L272 TraceCheckUtils]: 55: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,945 INFO L290 TraceCheckUtils]: 56: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,945 INFO L290 TraceCheckUtils]: 57: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,945 INFO L290 TraceCheckUtils]: 58: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,946 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #98#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,946 INFO L272 TraceCheckUtils]: 60: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,946 INFO L290 TraceCheckUtils]: 61: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,947 INFO L290 TraceCheckUtils]: 62: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,947 INFO L290 TraceCheckUtils]: 63: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,947 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #100#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,948 INFO L272 TraceCheckUtils]: 65: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,948 INFO L290 TraceCheckUtils]: 66: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,948 INFO L290 TraceCheckUtils]: 67: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,949 INFO L290 TraceCheckUtils]: 68: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,949 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #102#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,949 INFO L272 TraceCheckUtils]: 70: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,950 INFO L290 TraceCheckUtils]: 71: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,950 INFO L290 TraceCheckUtils]: 72: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,950 INFO L290 TraceCheckUtils]: 73: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,951 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #104#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,951 INFO L290 TraceCheckUtils]: 75: Hoare triple {99316#(<= ~counter~0 6)} assume !(~c~0 >= 2 * ~v~0); {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,951 INFO L290 TraceCheckUtils]: 76: Hoare triple {99316#(<= ~counter~0 6)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {99316#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:25,952 INFO L290 TraceCheckUtils]: 77: Hoare triple {99316#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99389#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:25,952 INFO L290 TraceCheckUtils]: 78: Hoare triple {99389#(<= ~counter~0 7)} assume !!(#t~post7 < 20);havoc #t~post7; {99389#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:25,952 INFO L290 TraceCheckUtils]: 79: Hoare triple {99389#(<= ~counter~0 7)} assume !(~c~0 >= ~b~0); {99389#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:25,953 INFO L290 TraceCheckUtils]: 80: Hoare triple {99389#(<= ~counter~0 7)} ~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; {99389#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:25,953 INFO L290 TraceCheckUtils]: 81: Hoare triple {99389#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99402#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:25,954 INFO L290 TraceCheckUtils]: 82: Hoare triple {99402#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {99402#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:25,954 INFO L290 TraceCheckUtils]: 83: Hoare triple {99402#(<= ~counter~0 8)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99402#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:25,956 INFO L290 TraceCheckUtils]: 84: Hoare triple {99402#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99412#(<= |main_#t~post7| 8)} is VALID [2022-04-15 08:58:25,956 INFO L290 TraceCheckUtils]: 85: Hoare triple {99412#(<= |main_#t~post7| 8)} assume !(#t~post7 < 20);havoc #t~post7; {99147#false} is VALID [2022-04-15 08:58:25,956 INFO L290 TraceCheckUtils]: 86: Hoare triple {99147#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; {99147#false} is VALID [2022-04-15 08:58:25,956 INFO L290 TraceCheckUtils]: 87: Hoare triple {99147#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99147#false} is VALID [2022-04-15 08:58:25,956 INFO L290 TraceCheckUtils]: 88: Hoare triple {99147#false} assume !(#t~post6 < 20);havoc #t~post6; {99147#false} is VALID [2022-04-15 08:58:25,956 INFO L272 TraceCheckUtils]: 89: Hoare triple {99147#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)); {99147#false} is VALID [2022-04-15 08:58:25,956 INFO L290 TraceCheckUtils]: 90: Hoare triple {99147#false} ~cond := #in~cond; {99147#false} is VALID [2022-04-15 08:58:25,956 INFO L290 TraceCheckUtils]: 91: Hoare triple {99147#false} assume 0 == ~cond; {99147#false} is VALID [2022-04-15 08:58:25,957 INFO L290 TraceCheckUtils]: 92: Hoare triple {99147#false} assume !false; {99147#false} is VALID [2022-04-15 08:58:25,963 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 24 proven. 96 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-15 08:58:25,963 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:58:26,394 INFO L290 TraceCheckUtils]: 92: Hoare triple {99147#false} assume !false; {99147#false} is VALID [2022-04-15 08:58:26,394 INFO L290 TraceCheckUtils]: 91: Hoare triple {99147#false} assume 0 == ~cond; {99147#false} is VALID [2022-04-15 08:58:26,394 INFO L290 TraceCheckUtils]: 90: Hoare triple {99147#false} ~cond := #in~cond; {99147#false} is VALID [2022-04-15 08:58:26,394 INFO L272 TraceCheckUtils]: 89: Hoare triple {99147#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)); {99147#false} is VALID [2022-04-15 08:58:26,394 INFO L290 TraceCheckUtils]: 88: Hoare triple {99147#false} assume !(#t~post6 < 20);havoc #t~post6; {99147#false} is VALID [2022-04-15 08:58:26,394 INFO L290 TraceCheckUtils]: 87: Hoare triple {99147#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99147#false} is VALID [2022-04-15 08:58:26,394 INFO L290 TraceCheckUtils]: 86: Hoare triple {99147#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; {99147#false} is VALID [2022-04-15 08:58:26,395 INFO L290 TraceCheckUtils]: 85: Hoare triple {99458#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {99147#false} is VALID [2022-04-15 08:58:26,395 INFO L290 TraceCheckUtils]: 84: Hoare triple {99462#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99458#(< |main_#t~post7| 20)} is VALID [2022-04-15 08:58:26,395 INFO L290 TraceCheckUtils]: 83: Hoare triple {99462#(< ~counter~0 20)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99462#(< ~counter~0 20)} is VALID [2022-04-15 08:58:26,396 INFO L290 TraceCheckUtils]: 82: Hoare triple {99462#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {99462#(< ~counter~0 20)} is VALID [2022-04-15 08:58:26,397 INFO L290 TraceCheckUtils]: 81: Hoare triple {99472#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99462#(< ~counter~0 20)} is VALID [2022-04-15 08:58:26,397 INFO L290 TraceCheckUtils]: 80: Hoare triple {99472#(< ~counter~0 19)} ~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; {99472#(< ~counter~0 19)} is VALID [2022-04-15 08:58:26,398 INFO L290 TraceCheckUtils]: 79: Hoare triple {99472#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {99472#(< ~counter~0 19)} is VALID [2022-04-15 08:58:26,398 INFO L290 TraceCheckUtils]: 78: Hoare triple {99472#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {99472#(< ~counter~0 19)} is VALID [2022-04-15 08:58:26,399 INFO L290 TraceCheckUtils]: 77: Hoare triple {99485#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99472#(< ~counter~0 19)} is VALID [2022-04-15 08:58:26,399 INFO L290 TraceCheckUtils]: 76: Hoare triple {99485#(< ~counter~0 18)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {99485#(< ~counter~0 18)} is VALID [2022-04-15 08:58:26,399 INFO L290 TraceCheckUtils]: 75: Hoare triple {99485#(< ~counter~0 18)} assume !(~c~0 >= 2 * ~v~0); {99485#(< ~counter~0 18)} is VALID [2022-04-15 08:58:26,400 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {99146#true} {99485#(< ~counter~0 18)} #104#return; {99485#(< ~counter~0 18)} is VALID [2022-04-15 08:58:26,400 INFO L290 TraceCheckUtils]: 73: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-15 08:58:26,400 INFO L290 TraceCheckUtils]: 72: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-15 08:58:26,400 INFO L290 TraceCheckUtils]: 71: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-15 08:58:26,400 INFO L272 TraceCheckUtils]: 70: Hoare triple {99485#(< ~counter~0 18)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99146#true} is VALID [2022-04-15 08:58:26,400 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {99146#true} {99485#(< ~counter~0 18)} #102#return; {99485#(< ~counter~0 18)} is VALID [2022-04-15 08:58:26,401 INFO L290 TraceCheckUtils]: 68: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-15 08:58:26,401 INFO L290 TraceCheckUtils]: 67: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-15 08:58:26,401 INFO L290 TraceCheckUtils]: 66: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-15 08:58:26,401 INFO L272 TraceCheckUtils]: 65: Hoare triple {99485#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99146#true} is VALID [2022-04-15 08:58:26,401 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {99146#true} {99485#(< ~counter~0 18)} #100#return; {99485#(< ~counter~0 18)} is VALID [2022-04-15 08:58:26,401 INFO L290 TraceCheckUtils]: 63: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-15 08:58:26,401 INFO L290 TraceCheckUtils]: 62: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-15 08:58:26,401 INFO L290 TraceCheckUtils]: 61: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-15 08:58:26,402 INFO L272 TraceCheckUtils]: 60: Hoare triple {99485#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99146#true} is VALID [2022-04-15 08:58:26,402 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {99146#true} {99485#(< ~counter~0 18)} #98#return; {99485#(< ~counter~0 18)} is VALID [2022-04-15 08:58:26,402 INFO L290 TraceCheckUtils]: 58: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-15 08:58:26,402 INFO L290 TraceCheckUtils]: 57: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-15 08:58:26,402 INFO L290 TraceCheckUtils]: 56: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-15 08:58:26,402 INFO L272 TraceCheckUtils]: 55: Hoare triple {99485#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99146#true} is VALID [2022-04-15 08:58:26,403 INFO L290 TraceCheckUtils]: 54: Hoare triple {99485#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {99485#(< ~counter~0 18)} is VALID [2022-04-15 08:58:26,404 INFO L290 TraceCheckUtils]: 53: Hoare triple {99558#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99485#(< ~counter~0 18)} is VALID [2022-04-15 08:58:26,404 INFO L290 TraceCheckUtils]: 52: Hoare triple {99558#(< ~counter~0 17)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {99558#(< ~counter~0 17)} is VALID [2022-04-15 08:58:26,404 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {99146#true} {99558#(< ~counter~0 17)} #104#return; {99558#(< ~counter~0 17)} is VALID [2022-04-15 08:58:26,404 INFO L290 TraceCheckUtils]: 50: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-15 08:58:26,405 INFO L290 TraceCheckUtils]: 49: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-15 08:58:26,405 INFO L290 TraceCheckUtils]: 48: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-15 08:58:26,405 INFO L272 TraceCheckUtils]: 47: Hoare triple {99558#(< ~counter~0 17)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99146#true} is VALID [2022-04-15 08:58:26,405 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {99146#true} {99558#(< ~counter~0 17)} #102#return; {99558#(< ~counter~0 17)} is VALID [2022-04-15 08:58:26,405 INFO L290 TraceCheckUtils]: 45: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-15 08:58:26,405 INFO L290 TraceCheckUtils]: 44: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-15 08:58:26,405 INFO L290 TraceCheckUtils]: 43: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-15 08:58:26,405 INFO L272 TraceCheckUtils]: 42: Hoare triple {99558#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99146#true} is VALID [2022-04-15 08:58:26,406 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {99146#true} {99558#(< ~counter~0 17)} #100#return; {99558#(< ~counter~0 17)} is VALID [2022-04-15 08:58:26,406 INFO L290 TraceCheckUtils]: 40: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-15 08:58:26,406 INFO L290 TraceCheckUtils]: 39: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-15 08:58:26,406 INFO L290 TraceCheckUtils]: 38: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-15 08:58:26,406 INFO L272 TraceCheckUtils]: 37: Hoare triple {99558#(< ~counter~0 17)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99146#true} is VALID [2022-04-15 08:58:26,407 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {99146#true} {99558#(< ~counter~0 17)} #98#return; {99558#(< ~counter~0 17)} is VALID [2022-04-15 08:58:26,407 INFO L290 TraceCheckUtils]: 35: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-15 08:58:26,407 INFO L290 TraceCheckUtils]: 34: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-15 08:58:26,407 INFO L290 TraceCheckUtils]: 33: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-15 08:58:26,407 INFO L272 TraceCheckUtils]: 32: Hoare triple {99558#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99146#true} is VALID [2022-04-15 08:58:26,407 INFO L290 TraceCheckUtils]: 31: Hoare triple {99558#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {99558#(< ~counter~0 17)} is VALID [2022-04-15 08:58:26,408 INFO L290 TraceCheckUtils]: 30: Hoare triple {99628#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99558#(< ~counter~0 17)} is VALID [2022-04-15 08:58:26,408 INFO L290 TraceCheckUtils]: 29: Hoare triple {99628#(< ~counter~0 16)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {99628#(< ~counter~0 16)} is VALID [2022-04-15 08:58:26,409 INFO L290 TraceCheckUtils]: 28: Hoare triple {99628#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {99628#(< ~counter~0 16)} is VALID [2022-04-15 08:58:26,409 INFO L290 TraceCheckUtils]: 27: Hoare triple {99638#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99628#(< ~counter~0 16)} is VALID [2022-04-15 08:58:26,410 INFO L290 TraceCheckUtils]: 26: Hoare triple {99638#(< ~counter~0 15)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99638#(< ~counter~0 15)} is VALID [2022-04-15 08:58:26,410 INFO L290 TraceCheckUtils]: 25: Hoare triple {99638#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {99638#(< ~counter~0 15)} is VALID [2022-04-15 08:58:26,411 INFO L290 TraceCheckUtils]: 24: Hoare triple {99648#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99638#(< ~counter~0 15)} is VALID [2022-04-15 08:58:26,411 INFO L290 TraceCheckUtils]: 23: Hoare triple {99648#(< ~counter~0 14)} ~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; {99648#(< ~counter~0 14)} is VALID [2022-04-15 08:58:26,411 INFO L290 TraceCheckUtils]: 22: Hoare triple {99648#(< ~counter~0 14)} assume !(~c~0 >= ~b~0); {99648#(< ~counter~0 14)} is VALID [2022-04-15 08:58:26,411 INFO L290 TraceCheckUtils]: 21: Hoare triple {99648#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {99648#(< ~counter~0 14)} is VALID [2022-04-15 08:58:26,412 INFO L290 TraceCheckUtils]: 20: Hoare triple {99661#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99648#(< ~counter~0 14)} is VALID [2022-04-15 08:58:26,412 INFO L290 TraceCheckUtils]: 19: Hoare triple {99661#(< ~counter~0 13)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99661#(< ~counter~0 13)} is VALID [2022-04-15 08:58:26,413 INFO L290 TraceCheckUtils]: 18: Hoare triple {99661#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {99661#(< ~counter~0 13)} is VALID [2022-04-15 08:58:26,414 INFO L290 TraceCheckUtils]: 17: Hoare triple {99671#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99661#(< ~counter~0 13)} is VALID [2022-04-15 08:58:26,436 INFO L290 TraceCheckUtils]: 16: Hoare triple {99671#(< ~counter~0 12)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {99671#(< ~counter~0 12)} is VALID [2022-04-15 08:58:26,459 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99146#true} {99671#(< ~counter~0 12)} #96#return; {99671#(< ~counter~0 12)} is VALID [2022-04-15 08:58:26,459 INFO L290 TraceCheckUtils]: 14: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-15 08:58:26,459 INFO L290 TraceCheckUtils]: 13: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-15 08:58:26,459 INFO L290 TraceCheckUtils]: 12: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-15 08:58:26,459 INFO L272 TraceCheckUtils]: 11: Hoare triple {99671#(< ~counter~0 12)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {99146#true} is VALID [2022-04-15 08:58:26,483 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99146#true} {99671#(< ~counter~0 12)} #94#return; {99671#(< ~counter~0 12)} is VALID [2022-04-15 08:58:26,483 INFO L290 TraceCheckUtils]: 9: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-15 08:58:26,483 INFO L290 TraceCheckUtils]: 8: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-15 08:58:26,484 INFO L290 TraceCheckUtils]: 7: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-15 08:58:26,484 INFO L272 TraceCheckUtils]: 6: Hoare triple {99671#(< ~counter~0 12)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {99146#true} is VALID [2022-04-15 08:58:26,484 INFO L290 TraceCheckUtils]: 5: Hoare triple {99671#(< ~counter~0 12)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {99671#(< ~counter~0 12)} is VALID [2022-04-15 08:58:26,484 INFO L272 TraceCheckUtils]: 4: Hoare triple {99671#(< ~counter~0 12)} call #t~ret9 := main(); {99671#(< ~counter~0 12)} is VALID [2022-04-15 08:58:26,484 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99671#(< ~counter~0 12)} {99146#true} #108#return; {99671#(< ~counter~0 12)} is VALID [2022-04-15 08:58:26,485 INFO L290 TraceCheckUtils]: 2: Hoare triple {99671#(< ~counter~0 12)} assume true; {99671#(< ~counter~0 12)} is VALID [2022-04-15 08:58:26,485 INFO L290 TraceCheckUtils]: 1: Hoare triple {99146#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);~counter~0 := 0; {99671#(< ~counter~0 12)} is VALID [2022-04-15 08:58:26,485 INFO L272 TraceCheckUtils]: 0: Hoare triple {99146#true} call ULTIMATE.init(); {99146#true} is VALID [2022-04-15 08:58:26,485 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 24 proven. 32 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-15 08:58:26,485 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:58:26,486 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1023264675] [2022-04-15 08:58:26,486 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:58:26,486 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1079190243] [2022-04-15 08:58:26,486 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1079190243] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:58:26,486 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:58:26,486 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-15 08:58:26,486 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:58:26,486 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1561269840] [2022-04-15 08:58:26,486 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1561269840] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:58:26,486 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:58:26,486 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 08:58:26,486 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [331171296] [2022-04-15 08:58:26,486 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:58:26,487 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 93 [2022-04-15 08:58:26,487 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:58:26,487 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:26,550 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-15 08:58:26,550 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 08:58:26,550 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:58:26,551 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 08:58:26,551 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-15 08:58:26,551 INFO L87 Difference]: Start difference. First operand 1038 states and 1386 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:29,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:29,694 INFO L93 Difference]: Finished difference Result 1382 states and 1902 transitions. [2022-04-15 08:58:29,694 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-15 08:58:29,694 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 93 [2022-04-15 08:58:29,694 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:58:29,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:29,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 233 transitions. [2022-04-15 08:58:29,696 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:29,697 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 233 transitions. [2022-04-15 08:58:29,697 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 233 transitions. [2022-04-15 08:58:29,896 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 233 edges. 233 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:29,943 INFO L225 Difference]: With dead ends: 1382 [2022-04-15 08:58:29,943 INFO L226 Difference]: Without dead ends: 1062 [2022-04-15 08:58:29,944 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 191 GetRequests, 165 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 39 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=310, Invalid=446, Unknown=0, NotChecked=0, Total=756 [2022-04-15 08:58:29,944 INFO L913 BasicCegarLoop]: 69 mSDtfsCounter, 140 mSDsluCounter, 241 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 65 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 140 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 65 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 08:58:29,944 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [140 Valid, 310 Invalid, 192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [65 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 08:58:29,945 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1062 states. [2022-04-15 08:58:32,382 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1062 to 1058. [2022-04-15 08:58:32,382 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:58:32,383 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:32,384 INFO L74 IsIncluded]: Start isIncluded. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:32,384 INFO L87 Difference]: Start difference. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:32,416 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:32,416 INFO L93 Difference]: Finished difference Result 1062 states and 1407 transitions. [2022-04-15 08:58:32,416 INFO L276 IsEmpty]: Start isEmpty. Operand 1062 states and 1407 transitions. [2022-04-15 08:58:32,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:58:32,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:58:32,419 INFO L74 IsIncluded]: Start isIncluded. First operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1062 states. [2022-04-15 08:58:32,420 INFO L87 Difference]: Start difference. First operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1062 states. [2022-04-15 08:58:32,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:32,452 INFO L93 Difference]: Finished difference Result 1062 states and 1407 transitions. [2022-04-15 08:58:32,452 INFO L276 IsEmpty]: Start isEmpty. Operand 1062 states and 1407 transitions. [2022-04-15 08:58:32,454 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:58:32,454 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:58:32,454 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:58:32,454 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:58:32,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-15 08:58:32,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1058 states to 1058 states and 1405 transitions. [2022-04-15 08:58:32,508 INFO L78 Accepts]: Start accepts. Automaton has 1058 states and 1405 transitions. Word has length 93 [2022-04-15 08:58:32,508 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:58:32,509 INFO L478 AbstractCegarLoop]: Abstraction has 1058 states and 1405 transitions. [2022-04-15 08:58:32,509 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:32,509 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1058 states and 1405 transitions. [2022-04-15 08:58:35,551 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1405 edges. 1405 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:35,551 INFO L276 IsEmpty]: Start isEmpty. Operand 1058 states and 1405 transitions. [2022-04-15 08:58:35,552 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-15 08:58:35,552 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:58:35,552 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:58:35,570 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Forceful destruction successful, exit code 0 [2022-04-15 08:58:35,755 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable32,33 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:58:35,755 INFO L403 AbstractCegarLoop]: === Iteration 34 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:58:35,756 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:58:35,756 INFO L85 PathProgramCache]: Analyzing trace with hash -2034142563, now seen corresponding path program 5 times [2022-04-15 08:58:35,756 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:58:35,756 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [198764575] [2022-04-15 08:58:35,756 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:58:35,756 INFO L85 PathProgramCache]: Analyzing trace with hash -2034142563, now seen corresponding path program 6 times [2022-04-15 08:58:35,756 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:58:35,756 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1167029805] [2022-04-15 08:58:35,756 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:58:35,756 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:58:35,769 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:58:35,769 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1405119440] [2022-04-15 08:58:35,769 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 08:58:35,770 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:58:35,770 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:58:35,771 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:58:35,772 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Waiting until timeout for monitored process [2022-04-15 08:58:35,900 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-15 08:58:35,900 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:58:35,902 INFO L263 TraceCheckSpWp]: Trace formula consists of 300 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-15 08:58:35,921 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:58:35,923 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:58:36,315 INFO L272 TraceCheckUtils]: 0: Hoare triple {106741#true} call ULTIMATE.init(); {106741#true} is VALID [2022-04-15 08:58:36,316 INFO L290 TraceCheckUtils]: 1: Hoare triple {106741#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);~counter~0 := 0; {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,316 INFO L290 TraceCheckUtils]: 2: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,316 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {106749#(<= ~counter~0 0)} {106741#true} #108#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,316 INFO L272 TraceCheckUtils]: 4: Hoare triple {106749#(<= ~counter~0 0)} call #t~ret9 := main(); {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,317 INFO L290 TraceCheckUtils]: 5: Hoare triple {106749#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,317 INFO L272 TraceCheckUtils]: 6: Hoare triple {106749#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,317 INFO L290 TraceCheckUtils]: 7: Hoare triple {106749#(<= ~counter~0 0)} ~cond := #in~cond; {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,317 INFO L290 TraceCheckUtils]: 8: Hoare triple {106749#(<= ~counter~0 0)} assume !(0 == ~cond); {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,318 INFO L290 TraceCheckUtils]: 9: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,318 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106749#(<= ~counter~0 0)} {106749#(<= ~counter~0 0)} #94#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,318 INFO L272 TraceCheckUtils]: 11: Hoare triple {106749#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,319 INFO L290 TraceCheckUtils]: 12: Hoare triple {106749#(<= ~counter~0 0)} ~cond := #in~cond; {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,319 INFO L290 TraceCheckUtils]: 13: Hoare triple {106749#(<= ~counter~0 0)} assume !(0 == ~cond); {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,319 INFO L290 TraceCheckUtils]: 14: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,320 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {106749#(<= ~counter~0 0)} {106749#(<= ~counter~0 0)} #96#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,320 INFO L290 TraceCheckUtils]: 16: Hoare triple {106749#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {106749#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:36,322 INFO L290 TraceCheckUtils]: 17: Hoare triple {106749#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106798#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:36,322 INFO L290 TraceCheckUtils]: 18: Hoare triple {106798#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {106798#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:36,322 INFO L290 TraceCheckUtils]: 19: Hoare triple {106798#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106798#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:36,323 INFO L290 TraceCheckUtils]: 20: Hoare triple {106798#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106808#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:36,323 INFO L290 TraceCheckUtils]: 21: Hoare triple {106808#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {106808#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:36,323 INFO L290 TraceCheckUtils]: 22: Hoare triple {106808#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {106808#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:36,324 INFO L290 TraceCheckUtils]: 23: Hoare triple {106808#(<= ~counter~0 2)} ~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; {106808#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:36,324 INFO L290 TraceCheckUtils]: 24: Hoare triple {106808#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106821#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:36,325 INFO L290 TraceCheckUtils]: 25: Hoare triple {106821#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {106821#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:36,325 INFO L290 TraceCheckUtils]: 26: Hoare triple {106821#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106821#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:36,326 INFO L290 TraceCheckUtils]: 27: Hoare triple {106821#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106831#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:36,326 INFO L290 TraceCheckUtils]: 28: Hoare triple {106831#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {106831#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:36,326 INFO L290 TraceCheckUtils]: 29: Hoare triple {106831#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {106831#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:36,327 INFO L290 TraceCheckUtils]: 30: Hoare triple {106831#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,327 INFO L290 TraceCheckUtils]: 31: Hoare triple {106841#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,328 INFO L272 TraceCheckUtils]: 32: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,328 INFO L290 TraceCheckUtils]: 33: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,328 INFO L290 TraceCheckUtils]: 34: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,328 INFO L290 TraceCheckUtils]: 35: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,329 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #98#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,329 INFO L272 TraceCheckUtils]: 37: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,330 INFO L290 TraceCheckUtils]: 38: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,330 INFO L290 TraceCheckUtils]: 39: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,330 INFO L290 TraceCheckUtils]: 40: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,331 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #100#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,331 INFO L272 TraceCheckUtils]: 42: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,331 INFO L290 TraceCheckUtils]: 43: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,332 INFO L290 TraceCheckUtils]: 44: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,332 INFO L290 TraceCheckUtils]: 45: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,332 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #102#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,333 INFO L272 TraceCheckUtils]: 47: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,333 INFO L290 TraceCheckUtils]: 48: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,333 INFO L290 TraceCheckUtils]: 49: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,334 INFO L290 TraceCheckUtils]: 50: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,334 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #104#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,334 INFO L290 TraceCheckUtils]: 52: Hoare triple {106841#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,334 INFO L290 TraceCheckUtils]: 53: Hoare triple {106841#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {106841#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:36,335 INFO L290 TraceCheckUtils]: 54: Hoare triple {106841#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106914#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:36,336 INFO L290 TraceCheckUtils]: 55: Hoare triple {106914#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {106914#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:36,336 INFO L290 TraceCheckUtils]: 56: Hoare triple {106914#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {106914#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:36,336 INFO L290 TraceCheckUtils]: 57: Hoare triple {106914#(<= ~counter~0 6)} ~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; {106914#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:36,337 INFO L290 TraceCheckUtils]: 58: Hoare triple {106914#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106927#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:36,337 INFO L290 TraceCheckUtils]: 59: Hoare triple {106927#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {106927#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:36,337 INFO L290 TraceCheckUtils]: 60: Hoare triple {106927#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106927#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:36,338 INFO L290 TraceCheckUtils]: 61: Hoare triple {106927#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106937#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:36,338 INFO L290 TraceCheckUtils]: 62: Hoare triple {106937#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {106937#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:36,362 INFO L290 TraceCheckUtils]: 63: Hoare triple {106937#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {106937#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:36,363 INFO L290 TraceCheckUtils]: 64: Hoare triple {106937#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,364 INFO L290 TraceCheckUtils]: 65: Hoare triple {106947#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,364 INFO L272 TraceCheckUtils]: 66: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,365 INFO L290 TraceCheckUtils]: 67: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,365 INFO L290 TraceCheckUtils]: 68: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,365 INFO L290 TraceCheckUtils]: 69: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,366 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #98#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,366 INFO L272 TraceCheckUtils]: 71: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,366 INFO L290 TraceCheckUtils]: 72: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,367 INFO L290 TraceCheckUtils]: 73: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,367 INFO L290 TraceCheckUtils]: 74: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,368 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #100#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,368 INFO L272 TraceCheckUtils]: 76: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,368 INFO L290 TraceCheckUtils]: 77: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,369 INFO L290 TraceCheckUtils]: 78: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,369 INFO L290 TraceCheckUtils]: 79: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,369 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #102#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,370 INFO L272 TraceCheckUtils]: 81: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,370 INFO L290 TraceCheckUtils]: 82: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,371 INFO L290 TraceCheckUtils]: 83: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,371 INFO L290 TraceCheckUtils]: 84: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,372 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #104#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,372 INFO L290 TraceCheckUtils]: 86: Hoare triple {106947#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,372 INFO L290 TraceCheckUtils]: 87: Hoare triple {106947#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {106947#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:36,373 INFO L290 TraceCheckUtils]: 88: Hoare triple {106947#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107020#(<= |main_#t~post7| 9)} is VALID [2022-04-15 08:58:36,373 INFO L290 TraceCheckUtils]: 89: Hoare triple {107020#(<= |main_#t~post7| 9)} assume !(#t~post7 < 20);havoc #t~post7; {106742#false} is VALID [2022-04-15 08:58:36,373 INFO L290 TraceCheckUtils]: 90: Hoare triple {106742#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; {106742#false} is VALID [2022-04-15 08:58:36,373 INFO L290 TraceCheckUtils]: 91: Hoare triple {106742#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106742#false} is VALID [2022-04-15 08:58:36,373 INFO L290 TraceCheckUtils]: 92: Hoare triple {106742#false} assume !(#t~post6 < 20);havoc #t~post6; {106742#false} is VALID [2022-04-15 08:58:36,373 INFO L272 TraceCheckUtils]: 93: Hoare triple {106742#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)); {106742#false} is VALID [2022-04-15 08:58:36,373 INFO L290 TraceCheckUtils]: 94: Hoare triple {106742#false} ~cond := #in~cond; {106742#false} is VALID [2022-04-15 08:58:36,373 INFO L290 TraceCheckUtils]: 95: Hoare triple {106742#false} assume 0 == ~cond; {106742#false} is VALID [2022-04-15 08:58:36,373 INFO L290 TraceCheckUtils]: 96: Hoare triple {106742#false} assume !false; {106742#false} is VALID [2022-04-15 08:58:36,374 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 108 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-15 08:58:36,374 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:58:36,859 INFO L290 TraceCheckUtils]: 96: Hoare triple {106742#false} assume !false; {106742#false} is VALID [2022-04-15 08:58:36,860 INFO L290 TraceCheckUtils]: 95: Hoare triple {106742#false} assume 0 == ~cond; {106742#false} is VALID [2022-04-15 08:58:36,860 INFO L290 TraceCheckUtils]: 94: Hoare triple {106742#false} ~cond := #in~cond; {106742#false} is VALID [2022-04-15 08:58:36,860 INFO L272 TraceCheckUtils]: 93: Hoare triple {106742#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)); {106742#false} is VALID [2022-04-15 08:58:36,860 INFO L290 TraceCheckUtils]: 92: Hoare triple {106742#false} assume !(#t~post6 < 20);havoc #t~post6; {106742#false} is VALID [2022-04-15 08:58:36,860 INFO L290 TraceCheckUtils]: 91: Hoare triple {106742#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106742#false} is VALID [2022-04-15 08:58:36,860 INFO L290 TraceCheckUtils]: 90: Hoare triple {106742#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; {106742#false} is VALID [2022-04-15 08:58:36,860 INFO L290 TraceCheckUtils]: 89: Hoare triple {107066#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {106742#false} is VALID [2022-04-15 08:58:36,861 INFO L290 TraceCheckUtils]: 88: Hoare triple {107070#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107066#(< |main_#t~post7| 20)} is VALID [2022-04-15 08:58:36,861 INFO L290 TraceCheckUtils]: 87: Hoare triple {107070#(< ~counter~0 20)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {107070#(< ~counter~0 20)} is VALID [2022-04-15 08:58:36,861 INFO L290 TraceCheckUtils]: 86: Hoare triple {107070#(< ~counter~0 20)} assume !(~c~0 >= 2 * ~v~0); {107070#(< ~counter~0 20)} is VALID [2022-04-15 08:58:36,862 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {106741#true} {107070#(< ~counter~0 20)} #104#return; {107070#(< ~counter~0 20)} is VALID [2022-04-15 08:58:36,862 INFO L290 TraceCheckUtils]: 84: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-15 08:58:36,862 INFO L290 TraceCheckUtils]: 83: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-15 08:58:36,862 INFO L290 TraceCheckUtils]: 82: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-15 08:58:36,862 INFO L272 TraceCheckUtils]: 81: Hoare triple {107070#(< ~counter~0 20)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106741#true} is VALID [2022-04-15 08:58:36,863 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {106741#true} {107070#(< ~counter~0 20)} #102#return; {107070#(< ~counter~0 20)} is VALID [2022-04-15 08:58:36,863 INFO L290 TraceCheckUtils]: 79: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-15 08:58:36,863 INFO L290 TraceCheckUtils]: 78: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-15 08:58:36,863 INFO L290 TraceCheckUtils]: 77: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-15 08:58:36,863 INFO L272 TraceCheckUtils]: 76: Hoare triple {107070#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106741#true} is VALID [2022-04-15 08:58:36,863 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {106741#true} {107070#(< ~counter~0 20)} #100#return; {107070#(< ~counter~0 20)} is VALID [2022-04-15 08:58:36,864 INFO L290 TraceCheckUtils]: 74: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-15 08:58:36,864 INFO L290 TraceCheckUtils]: 73: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-15 08:58:36,864 INFO L290 TraceCheckUtils]: 72: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-15 08:58:36,864 INFO L272 TraceCheckUtils]: 71: Hoare triple {107070#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106741#true} is VALID [2022-04-15 08:58:36,864 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {106741#true} {107070#(< ~counter~0 20)} #98#return; {107070#(< ~counter~0 20)} is VALID [2022-04-15 08:58:36,864 INFO L290 TraceCheckUtils]: 69: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-15 08:58:36,864 INFO L290 TraceCheckUtils]: 68: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-15 08:58:36,864 INFO L290 TraceCheckUtils]: 67: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-15 08:58:36,865 INFO L272 TraceCheckUtils]: 66: Hoare triple {107070#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106741#true} is VALID [2022-04-15 08:58:36,865 INFO L290 TraceCheckUtils]: 65: Hoare triple {107070#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {107070#(< ~counter~0 20)} is VALID [2022-04-15 08:58:36,867 INFO L290 TraceCheckUtils]: 64: Hoare triple {107143#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {107070#(< ~counter~0 20)} is VALID [2022-04-15 08:58:36,867 INFO L290 TraceCheckUtils]: 63: Hoare triple {107143#(< ~counter~0 19)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {107143#(< ~counter~0 19)} is VALID [2022-04-15 08:58:36,867 INFO L290 TraceCheckUtils]: 62: Hoare triple {107143#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {107143#(< ~counter~0 19)} is VALID [2022-04-15 08:58:36,868 INFO L290 TraceCheckUtils]: 61: Hoare triple {107153#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107143#(< ~counter~0 19)} is VALID [2022-04-15 08:58:36,875 INFO L290 TraceCheckUtils]: 60: Hoare triple {107153#(< ~counter~0 18)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107153#(< ~counter~0 18)} is VALID [2022-04-15 08:58:36,875 INFO L290 TraceCheckUtils]: 59: Hoare triple {107153#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {107153#(< ~counter~0 18)} is VALID [2022-04-15 08:58:36,877 INFO L290 TraceCheckUtils]: 58: Hoare triple {107163#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107153#(< ~counter~0 18)} is VALID [2022-04-15 08:58:36,877 INFO L290 TraceCheckUtils]: 57: Hoare triple {107163#(< ~counter~0 17)} ~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; {107163#(< ~counter~0 17)} is VALID [2022-04-15 08:58:36,877 INFO L290 TraceCheckUtils]: 56: Hoare triple {107163#(< ~counter~0 17)} assume !(~c~0 >= ~b~0); {107163#(< ~counter~0 17)} is VALID [2022-04-15 08:58:36,877 INFO L290 TraceCheckUtils]: 55: Hoare triple {107163#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {107163#(< ~counter~0 17)} is VALID [2022-04-15 08:58:36,878 INFO L290 TraceCheckUtils]: 54: Hoare triple {107176#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107163#(< ~counter~0 17)} is VALID [2022-04-15 08:58:36,878 INFO L290 TraceCheckUtils]: 53: Hoare triple {107176#(< ~counter~0 16)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {107176#(< ~counter~0 16)} is VALID [2022-04-15 08:58:36,879 INFO L290 TraceCheckUtils]: 52: Hoare triple {107176#(< ~counter~0 16)} assume !(~c~0 >= 2 * ~v~0); {107176#(< ~counter~0 16)} is VALID [2022-04-15 08:58:36,879 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {106741#true} {107176#(< ~counter~0 16)} #104#return; {107176#(< ~counter~0 16)} is VALID [2022-04-15 08:58:36,879 INFO L290 TraceCheckUtils]: 50: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-15 08:58:36,879 INFO L290 TraceCheckUtils]: 49: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-15 08:58:36,879 INFO L290 TraceCheckUtils]: 48: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-15 08:58:36,880 INFO L272 TraceCheckUtils]: 47: Hoare triple {107176#(< ~counter~0 16)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106741#true} is VALID [2022-04-15 08:58:36,880 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {106741#true} {107176#(< ~counter~0 16)} #102#return; {107176#(< ~counter~0 16)} is VALID [2022-04-15 08:58:36,880 INFO L290 TraceCheckUtils]: 45: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-15 08:58:36,880 INFO L290 TraceCheckUtils]: 44: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-15 08:58:36,880 INFO L290 TraceCheckUtils]: 43: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-15 08:58:36,880 INFO L272 TraceCheckUtils]: 42: Hoare triple {107176#(< ~counter~0 16)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106741#true} is VALID [2022-04-15 08:58:36,881 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {106741#true} {107176#(< ~counter~0 16)} #100#return; {107176#(< ~counter~0 16)} is VALID [2022-04-15 08:58:36,881 INFO L290 TraceCheckUtils]: 40: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-15 08:58:36,881 INFO L290 TraceCheckUtils]: 39: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-15 08:58:36,881 INFO L290 TraceCheckUtils]: 38: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-15 08:58:36,881 INFO L272 TraceCheckUtils]: 37: Hoare triple {107176#(< ~counter~0 16)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106741#true} is VALID [2022-04-15 08:58:36,881 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {106741#true} {107176#(< ~counter~0 16)} #98#return; {107176#(< ~counter~0 16)} is VALID [2022-04-15 08:58:36,882 INFO L290 TraceCheckUtils]: 35: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-15 08:58:36,882 INFO L290 TraceCheckUtils]: 34: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-15 08:58:36,882 INFO L290 TraceCheckUtils]: 33: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-15 08:58:36,882 INFO L272 TraceCheckUtils]: 32: Hoare triple {107176#(< ~counter~0 16)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106741#true} is VALID [2022-04-15 08:58:36,882 INFO L290 TraceCheckUtils]: 31: Hoare triple {107176#(< ~counter~0 16)} assume !!(#t~post8 < 20);havoc #t~post8; {107176#(< ~counter~0 16)} is VALID [2022-04-15 08:58:36,883 INFO L290 TraceCheckUtils]: 30: Hoare triple {107249#(< ~counter~0 15)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {107176#(< ~counter~0 16)} is VALID [2022-04-15 08:58:36,883 INFO L290 TraceCheckUtils]: 29: Hoare triple {107249#(< ~counter~0 15)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {107249#(< ~counter~0 15)} is VALID [2022-04-15 08:58:36,884 INFO L290 TraceCheckUtils]: 28: Hoare triple {107249#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {107249#(< ~counter~0 15)} is VALID [2022-04-15 08:58:36,884 INFO L290 TraceCheckUtils]: 27: Hoare triple {107259#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107249#(< ~counter~0 15)} is VALID [2022-04-15 08:58:36,885 INFO L290 TraceCheckUtils]: 26: Hoare triple {107259#(< ~counter~0 14)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107259#(< ~counter~0 14)} is VALID [2022-04-15 08:58:36,885 INFO L290 TraceCheckUtils]: 25: Hoare triple {107259#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {107259#(< ~counter~0 14)} is VALID [2022-04-15 08:58:36,886 INFO L290 TraceCheckUtils]: 24: Hoare triple {107269#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107259#(< ~counter~0 14)} is VALID [2022-04-15 08:58:36,886 INFO L290 TraceCheckUtils]: 23: Hoare triple {107269#(< ~counter~0 13)} ~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; {107269#(< ~counter~0 13)} is VALID [2022-04-15 08:58:36,886 INFO L290 TraceCheckUtils]: 22: Hoare triple {107269#(< ~counter~0 13)} assume !(~c~0 >= ~b~0); {107269#(< ~counter~0 13)} is VALID [2022-04-15 08:58:36,886 INFO L290 TraceCheckUtils]: 21: Hoare triple {107269#(< ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {107269#(< ~counter~0 13)} is VALID [2022-04-15 08:58:36,887 INFO L290 TraceCheckUtils]: 20: Hoare triple {107282#(< ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107269#(< ~counter~0 13)} is VALID [2022-04-15 08:58:36,887 INFO L290 TraceCheckUtils]: 19: Hoare triple {107282#(< ~counter~0 12)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107282#(< ~counter~0 12)} is VALID [2022-04-15 08:58:36,888 INFO L290 TraceCheckUtils]: 18: Hoare triple {107282#(< ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {107282#(< ~counter~0 12)} is VALID [2022-04-15 08:58:36,888 INFO L290 TraceCheckUtils]: 17: Hoare triple {107292#(< ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107282#(< ~counter~0 12)} is VALID [2022-04-15 08:58:36,889 INFO L290 TraceCheckUtils]: 16: Hoare triple {107292#(< ~counter~0 11)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {107292#(< ~counter~0 11)} is VALID [2022-04-15 08:58:36,889 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {106741#true} {107292#(< ~counter~0 11)} #96#return; {107292#(< ~counter~0 11)} is VALID [2022-04-15 08:58:36,889 INFO L290 TraceCheckUtils]: 14: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-15 08:58:36,889 INFO L290 TraceCheckUtils]: 13: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-15 08:58:36,889 INFO L290 TraceCheckUtils]: 12: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-15 08:58:36,889 INFO L272 TraceCheckUtils]: 11: Hoare triple {107292#(< ~counter~0 11)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {106741#true} is VALID [2022-04-15 08:58:36,890 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106741#true} {107292#(< ~counter~0 11)} #94#return; {107292#(< ~counter~0 11)} is VALID [2022-04-15 08:58:36,890 INFO L290 TraceCheckUtils]: 9: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-15 08:58:36,890 INFO L290 TraceCheckUtils]: 8: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-15 08:58:36,890 INFO L290 TraceCheckUtils]: 7: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-15 08:58:36,890 INFO L272 TraceCheckUtils]: 6: Hoare triple {107292#(< ~counter~0 11)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {106741#true} is VALID [2022-04-15 08:58:36,890 INFO L290 TraceCheckUtils]: 5: Hoare triple {107292#(< ~counter~0 11)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {107292#(< ~counter~0 11)} is VALID [2022-04-15 08:58:36,890 INFO L272 TraceCheckUtils]: 4: Hoare triple {107292#(< ~counter~0 11)} call #t~ret9 := main(); {107292#(< ~counter~0 11)} is VALID [2022-04-15 08:58:36,891 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {107292#(< ~counter~0 11)} {106741#true} #108#return; {107292#(< ~counter~0 11)} is VALID [2022-04-15 08:58:36,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {107292#(< ~counter~0 11)} assume true; {107292#(< ~counter~0 11)} is VALID [2022-04-15 08:58:36,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {106741#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);~counter~0 := 0; {107292#(< ~counter~0 11)} is VALID [2022-04-15 08:58:36,891 INFO L272 TraceCheckUtils]: 0: Hoare triple {106741#true} call ULTIMATE.init(); {106741#true} is VALID [2022-04-15 08:58:36,892 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 44 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-15 08:58:36,892 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:58:36,892 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1167029805] [2022-04-15 08:58:36,892 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:58:36,892 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1405119440] [2022-04-15 08:58:36,892 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1405119440] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:58:36,892 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:58:36,892 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-15 08:58:36,892 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:58:36,892 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [198764575] [2022-04-15 08:58:36,893 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [198764575] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:58:36,893 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:58:36,893 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 08:58:36,893 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1980838460] [2022-04-15 08:58:36,893 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:58:36,893 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 97 [2022-04-15 08:58:36,893 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:58:36,893 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:36,959 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:36,959 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 08:58:36,959 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:58:36,960 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 08:58:36,960 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-15 08:58:36,960 INFO L87 Difference]: Start difference. First operand 1058 states and 1405 transitions. Second operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:40,596 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:40,597 INFO L93 Difference]: Finished difference Result 1539 states and 2090 transitions. [2022-04-15 08:58:40,597 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-15 08:58:40,597 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 97 [2022-04-15 08:58:40,597 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:58:40,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:40,599 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-15 08:58:40,599 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:40,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-15 08:58:40,600 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 261 transitions. [2022-04-15 08:58:40,834 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:40,897 INFO L225 Difference]: With dead ends: 1539 [2022-04-15 08:58:40,897 INFO L226 Difference]: Without dead ends: 1219 [2022-04-15 08:58:40,899 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=384, Invalid=546, Unknown=0, NotChecked=0, Total=930 [2022-04-15 08:58:40,899 INFO L913 BasicCegarLoop]: 73 mSDtfsCounter, 170 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 155 mSolverCounterSat, 69 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 328 SdHoareTripleChecker+Invalid, 224 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 69 IncrementalHoareTripleChecker+Valid, 155 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 08:58:40,899 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [170 Valid, 328 Invalid, 224 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [69 Valid, 155 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 08:58:40,900 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1219 states. [2022-04-15 08:58:43,476 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1219 to 1164. [2022-04-15 08:58:43,477 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:58:43,478 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-15 08:58:43,479 INFO L74 IsIncluded]: Start isIncluded. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-15 08:58:43,479 INFO L87 Difference]: Start difference. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-15 08:58:43,518 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:43,519 INFO L93 Difference]: Finished difference Result 1219 states and 1594 transitions. [2022-04-15 08:58:43,519 INFO L276 IsEmpty]: Start isEmpty. Operand 1219 states and 1594 transitions. [2022-04-15 08:58:43,520 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:58:43,520 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:58:43,522 INFO L74 IsIncluded]: Start isIncluded. First operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) Second operand 1219 states. [2022-04-15 08:58:43,522 INFO L87 Difference]: Start difference. First operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) Second operand 1219 states. [2022-04-15 08:58:43,562 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:43,562 INFO L93 Difference]: Finished difference Result 1219 states and 1594 transitions. [2022-04-15 08:58:43,562 INFO L276 IsEmpty]: Start isEmpty. Operand 1219 states and 1594 transitions. [2022-04-15 08:58:43,564 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:58:43,564 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:58:43,564 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:58:43,564 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:58:43,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-15 08:58:43,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1164 states to 1164 states and 1539 transitions. [2022-04-15 08:58:43,621 INFO L78 Accepts]: Start accepts. Automaton has 1164 states and 1539 transitions. Word has length 97 [2022-04-15 08:58:43,622 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:58:43,622 INFO L478 AbstractCegarLoop]: Abstraction has 1164 states and 1539 transitions. [2022-04-15 08:58:43,622 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:43,622 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1164 states and 1539 transitions. [2022-04-15 08:58:47,130 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1539 edges. 1539 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:47,130 INFO L276 IsEmpty]: Start isEmpty. Operand 1164 states and 1539 transitions. [2022-04-15 08:58:47,131 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 99 [2022-04-15 08:58:47,131 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:58:47,131 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 5, 5, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:58:47,148 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Forceful destruction successful, exit code 0 [2022-04-15 08:58:47,347 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 34 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable33 [2022-04-15 08:58:47,347 INFO L403 AbstractCegarLoop]: === Iteration 35 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:58:47,347 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:58:47,348 INFO L85 PathProgramCache]: Analyzing trace with hash 1787026468, now seen corresponding path program 7 times [2022-04-15 08:58:47,348 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:58:47,348 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1748522054] [2022-04-15 08:58:47,348 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:58:47,348 INFO L85 PathProgramCache]: Analyzing trace with hash 1787026468, now seen corresponding path program 8 times [2022-04-15 08:58:47,348 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:58:47,348 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2075443432] [2022-04-15 08:58:47,348 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:58:47,348 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:58:47,361 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:58:47,361 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [506283610] [2022-04-15 08:58:47,361 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:58:47,361 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:58:47,361 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:58:47,362 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:58:47,363 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Waiting until timeout for monitored process [2022-04-15 08:58:47,414 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:58:47,414 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:58:47,415 INFO L263 TraceCheckSpWp]: Trace formula consists of 301 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-15 08:58:47,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:58:47,440 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:58:47,857 INFO L272 TraceCheckUtils]: 0: Hoare triple {115204#true} call ULTIMATE.init(); {115204#true} is VALID [2022-04-15 08:58:47,858 INFO L290 TraceCheckUtils]: 1: Hoare triple {115204#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);~counter~0 := 0; {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,858 INFO L290 TraceCheckUtils]: 2: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,858 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115212#(<= ~counter~0 0)} {115204#true} #108#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,859 INFO L272 TraceCheckUtils]: 4: Hoare triple {115212#(<= ~counter~0 0)} call #t~ret9 := main(); {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,859 INFO L290 TraceCheckUtils]: 5: Hoare triple {115212#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,859 INFO L272 TraceCheckUtils]: 6: Hoare triple {115212#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,859 INFO L290 TraceCheckUtils]: 7: Hoare triple {115212#(<= ~counter~0 0)} ~cond := #in~cond; {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,860 INFO L290 TraceCheckUtils]: 8: Hoare triple {115212#(<= ~counter~0 0)} assume !(0 == ~cond); {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,860 INFO L290 TraceCheckUtils]: 9: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,860 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115212#(<= ~counter~0 0)} {115212#(<= ~counter~0 0)} #94#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,861 INFO L272 TraceCheckUtils]: 11: Hoare triple {115212#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,861 INFO L290 TraceCheckUtils]: 12: Hoare triple {115212#(<= ~counter~0 0)} ~cond := #in~cond; {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,861 INFO L290 TraceCheckUtils]: 13: Hoare triple {115212#(<= ~counter~0 0)} assume !(0 == ~cond); {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,861 INFO L290 TraceCheckUtils]: 14: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,862 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115212#(<= ~counter~0 0)} {115212#(<= ~counter~0 0)} #96#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,862 INFO L290 TraceCheckUtils]: 16: Hoare triple {115212#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {115212#(<= ~counter~0 0)} is VALID [2022-04-15 08:58:47,864 INFO L290 TraceCheckUtils]: 17: Hoare triple {115212#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115261#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:47,864 INFO L290 TraceCheckUtils]: 18: Hoare triple {115261#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {115261#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:47,864 INFO L290 TraceCheckUtils]: 19: Hoare triple {115261#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115261#(<= ~counter~0 1)} is VALID [2022-04-15 08:58:47,865 INFO L290 TraceCheckUtils]: 20: Hoare triple {115261#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115271#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:47,865 INFO L290 TraceCheckUtils]: 21: Hoare triple {115271#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {115271#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:47,866 INFO L290 TraceCheckUtils]: 22: Hoare triple {115271#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {115271#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:47,866 INFO L290 TraceCheckUtils]: 23: Hoare triple {115271#(<= ~counter~0 2)} ~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; {115271#(<= ~counter~0 2)} is VALID [2022-04-15 08:58:47,867 INFO L290 TraceCheckUtils]: 24: Hoare triple {115271#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115284#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:47,867 INFO L290 TraceCheckUtils]: 25: Hoare triple {115284#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {115284#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:47,867 INFO L290 TraceCheckUtils]: 26: Hoare triple {115284#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115284#(<= ~counter~0 3)} is VALID [2022-04-15 08:58:47,868 INFO L290 TraceCheckUtils]: 27: Hoare triple {115284#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115294#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:47,869 INFO L290 TraceCheckUtils]: 28: Hoare triple {115294#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {115294#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:47,869 INFO L290 TraceCheckUtils]: 29: Hoare triple {115294#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115294#(<= ~counter~0 4)} is VALID [2022-04-15 08:58:47,870 INFO L290 TraceCheckUtils]: 30: Hoare triple {115294#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,870 INFO L290 TraceCheckUtils]: 31: Hoare triple {115304#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,870 INFO L272 TraceCheckUtils]: 32: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,871 INFO L290 TraceCheckUtils]: 33: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,871 INFO L290 TraceCheckUtils]: 34: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,871 INFO L290 TraceCheckUtils]: 35: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,872 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #98#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,872 INFO L272 TraceCheckUtils]: 37: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,872 INFO L290 TraceCheckUtils]: 38: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,873 INFO L290 TraceCheckUtils]: 39: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,873 INFO L290 TraceCheckUtils]: 40: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,873 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #100#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,874 INFO L272 TraceCheckUtils]: 42: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,874 INFO L290 TraceCheckUtils]: 43: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,874 INFO L290 TraceCheckUtils]: 44: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,875 INFO L290 TraceCheckUtils]: 45: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,875 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #102#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,875 INFO L272 TraceCheckUtils]: 47: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,876 INFO L290 TraceCheckUtils]: 48: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,876 INFO L290 TraceCheckUtils]: 49: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,876 INFO L290 TraceCheckUtils]: 50: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,877 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #104#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,877 INFO L290 TraceCheckUtils]: 52: Hoare triple {115304#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,877 INFO L290 TraceCheckUtils]: 53: Hoare triple {115304#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115304#(<= ~counter~0 5)} is VALID [2022-04-15 08:58:47,879 INFO L290 TraceCheckUtils]: 54: Hoare triple {115304#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115377#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:47,879 INFO L290 TraceCheckUtils]: 55: Hoare triple {115377#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {115377#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:47,879 INFO L290 TraceCheckUtils]: 56: Hoare triple {115377#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {115377#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:47,880 INFO L290 TraceCheckUtils]: 57: Hoare triple {115377#(<= ~counter~0 6)} ~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; {115377#(<= ~counter~0 6)} is VALID [2022-04-15 08:58:47,880 INFO L290 TraceCheckUtils]: 58: Hoare triple {115377#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115390#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:47,881 INFO L290 TraceCheckUtils]: 59: Hoare triple {115390#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {115390#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:47,881 INFO L290 TraceCheckUtils]: 60: Hoare triple {115390#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115390#(<= ~counter~0 7)} is VALID [2022-04-15 08:58:47,882 INFO L290 TraceCheckUtils]: 61: Hoare triple {115390#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115400#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:47,882 INFO L290 TraceCheckUtils]: 62: Hoare triple {115400#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {115400#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:47,882 INFO L290 TraceCheckUtils]: 63: Hoare triple {115400#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115400#(<= ~counter~0 8)} is VALID [2022-04-15 08:58:47,883 INFO L290 TraceCheckUtils]: 64: Hoare triple {115400#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,883 INFO L290 TraceCheckUtils]: 65: Hoare triple {115410#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,884 INFO L272 TraceCheckUtils]: 66: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,884 INFO L290 TraceCheckUtils]: 67: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,884 INFO L290 TraceCheckUtils]: 68: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,885 INFO L290 TraceCheckUtils]: 69: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,885 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #98#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,886 INFO L272 TraceCheckUtils]: 71: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,886 INFO L290 TraceCheckUtils]: 72: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,886 INFO L290 TraceCheckUtils]: 73: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,886 INFO L290 TraceCheckUtils]: 74: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,887 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #100#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,887 INFO L272 TraceCheckUtils]: 76: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,887 INFO L290 TraceCheckUtils]: 77: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,888 INFO L290 TraceCheckUtils]: 78: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,888 INFO L290 TraceCheckUtils]: 79: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,888 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #102#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,889 INFO L272 TraceCheckUtils]: 81: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,889 INFO L290 TraceCheckUtils]: 82: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,889 INFO L290 TraceCheckUtils]: 83: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,890 INFO L290 TraceCheckUtils]: 84: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,890 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #104#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,890 INFO L290 TraceCheckUtils]: 86: Hoare triple {115410#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,890 INFO L290 TraceCheckUtils]: 87: Hoare triple {115410#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:47,892 INFO L290 TraceCheckUtils]: 88: Hoare triple {115410#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115483#(<= ~counter~0 10)} is VALID [2022-04-15 08:58:47,893 INFO L290 TraceCheckUtils]: 89: Hoare triple {115483#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {115483#(<= ~counter~0 10)} is VALID [2022-04-15 08:58:47,893 INFO L290 TraceCheckUtils]: 90: Hoare triple {115483#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {115483#(<= ~counter~0 10)} is VALID [2022-04-15 08:58:47,893 INFO L290 TraceCheckUtils]: 91: Hoare triple {115483#(<= ~counter~0 10)} ~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; {115483#(<= ~counter~0 10)} is VALID [2022-04-15 08:58:47,894 INFO L290 TraceCheckUtils]: 92: Hoare triple {115483#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115496#(<= |main_#t~post6| 10)} is VALID [2022-04-15 08:58:47,894 INFO L290 TraceCheckUtils]: 93: Hoare triple {115496#(<= |main_#t~post6| 10)} assume !(#t~post6 < 20);havoc #t~post6; {115205#false} is VALID [2022-04-15 08:58:47,894 INFO L272 TraceCheckUtils]: 94: Hoare triple {115205#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)); {115205#false} is VALID [2022-04-15 08:58:47,894 INFO L290 TraceCheckUtils]: 95: Hoare triple {115205#false} ~cond := #in~cond; {115205#false} is VALID [2022-04-15 08:58:47,894 INFO L290 TraceCheckUtils]: 96: Hoare triple {115205#false} assume 0 == ~cond; {115205#false} is VALID [2022-04-15 08:58:47,894 INFO L290 TraceCheckUtils]: 97: Hoare triple {115205#false} assume !false; {115205#false} is VALID [2022-04-15 08:58:47,894 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 16 proven. 120 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-15 08:58:47,894 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:58:48,413 INFO L290 TraceCheckUtils]: 97: Hoare triple {115205#false} assume !false; {115205#false} is VALID [2022-04-15 08:58:48,413 INFO L290 TraceCheckUtils]: 96: Hoare triple {115205#false} assume 0 == ~cond; {115205#false} is VALID [2022-04-15 08:58:48,413 INFO L290 TraceCheckUtils]: 95: Hoare triple {115205#false} ~cond := #in~cond; {115205#false} is VALID [2022-04-15 08:58:48,414 INFO L272 TraceCheckUtils]: 94: Hoare triple {115205#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)); {115205#false} is VALID [2022-04-15 08:58:48,415 INFO L290 TraceCheckUtils]: 93: Hoare triple {115524#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {115205#false} is VALID [2022-04-15 08:58:48,415 INFO L290 TraceCheckUtils]: 92: Hoare triple {115528#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115524#(< |main_#t~post6| 20)} is VALID [2022-04-15 08:58:48,415 INFO L290 TraceCheckUtils]: 91: Hoare triple {115528#(< ~counter~0 20)} ~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; {115528#(< ~counter~0 20)} is VALID [2022-04-15 08:58:48,415 INFO L290 TraceCheckUtils]: 90: Hoare triple {115528#(< ~counter~0 20)} assume !(~c~0 >= ~b~0); {115528#(< ~counter~0 20)} is VALID [2022-04-15 08:58:48,416 INFO L290 TraceCheckUtils]: 89: Hoare triple {115528#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {115528#(< ~counter~0 20)} is VALID [2022-04-15 08:58:48,417 INFO L290 TraceCheckUtils]: 88: Hoare triple {115541#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115528#(< ~counter~0 20)} is VALID [2022-04-15 08:58:48,418 INFO L290 TraceCheckUtils]: 87: Hoare triple {115541#(< ~counter~0 19)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115541#(< ~counter~0 19)} is VALID [2022-04-15 08:58:48,418 INFO L290 TraceCheckUtils]: 86: Hoare triple {115541#(< ~counter~0 19)} assume !(~c~0 >= 2 * ~v~0); {115541#(< ~counter~0 19)} is VALID [2022-04-15 08:58:48,418 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {115204#true} {115541#(< ~counter~0 19)} #104#return; {115541#(< ~counter~0 19)} is VALID [2022-04-15 08:58:48,419 INFO L290 TraceCheckUtils]: 84: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-15 08:58:48,419 INFO L290 TraceCheckUtils]: 83: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-15 08:58:48,419 INFO L290 TraceCheckUtils]: 82: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-15 08:58:48,419 INFO L272 TraceCheckUtils]: 81: Hoare triple {115541#(< ~counter~0 19)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115204#true} is VALID [2022-04-15 08:58:48,419 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {115204#true} {115541#(< ~counter~0 19)} #102#return; {115541#(< ~counter~0 19)} is VALID [2022-04-15 08:58:48,419 INFO L290 TraceCheckUtils]: 79: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-15 08:58:48,419 INFO L290 TraceCheckUtils]: 78: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-15 08:58:48,419 INFO L290 TraceCheckUtils]: 77: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-15 08:58:48,420 INFO L272 TraceCheckUtils]: 76: Hoare triple {115541#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115204#true} is VALID [2022-04-15 08:58:48,420 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {115204#true} {115541#(< ~counter~0 19)} #100#return; {115541#(< ~counter~0 19)} is VALID [2022-04-15 08:58:48,420 INFO L290 TraceCheckUtils]: 74: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-15 08:58:48,420 INFO L290 TraceCheckUtils]: 73: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-15 08:58:48,420 INFO L290 TraceCheckUtils]: 72: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-15 08:58:48,420 INFO L272 TraceCheckUtils]: 71: Hoare triple {115541#(< ~counter~0 19)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115204#true} is VALID [2022-04-15 08:58:48,424 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {115204#true} {115541#(< ~counter~0 19)} #98#return; {115541#(< ~counter~0 19)} is VALID [2022-04-15 08:58:48,424 INFO L290 TraceCheckUtils]: 69: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-15 08:58:48,424 INFO L290 TraceCheckUtils]: 68: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-15 08:58:48,424 INFO L290 TraceCheckUtils]: 67: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-15 08:58:48,424 INFO L272 TraceCheckUtils]: 66: Hoare triple {115541#(< ~counter~0 19)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115204#true} is VALID [2022-04-15 08:58:48,424 INFO L290 TraceCheckUtils]: 65: Hoare triple {115541#(< ~counter~0 19)} assume !!(#t~post8 < 20);havoc #t~post8; {115541#(< ~counter~0 19)} is VALID [2022-04-15 08:58:48,426 INFO L290 TraceCheckUtils]: 64: Hoare triple {115614#(< ~counter~0 18)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115541#(< ~counter~0 19)} is VALID [2022-04-15 08:58:48,426 INFO L290 TraceCheckUtils]: 63: Hoare triple {115614#(< ~counter~0 18)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115614#(< ~counter~0 18)} is VALID [2022-04-15 08:58:48,427 INFO L290 TraceCheckUtils]: 62: Hoare triple {115614#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {115614#(< ~counter~0 18)} is VALID [2022-04-15 08:58:48,428 INFO L290 TraceCheckUtils]: 61: Hoare triple {115624#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115614#(< ~counter~0 18)} is VALID [2022-04-15 08:58:48,428 INFO L290 TraceCheckUtils]: 60: Hoare triple {115624#(< ~counter~0 17)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115624#(< ~counter~0 17)} is VALID [2022-04-15 08:58:48,428 INFO L290 TraceCheckUtils]: 59: Hoare triple {115624#(< ~counter~0 17)} assume !!(#t~post6 < 20);havoc #t~post6; {115624#(< ~counter~0 17)} is VALID [2022-04-15 08:58:48,429 INFO L290 TraceCheckUtils]: 58: Hoare triple {115634#(< ~counter~0 16)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115624#(< ~counter~0 17)} is VALID [2022-04-15 08:58:48,429 INFO L290 TraceCheckUtils]: 57: Hoare triple {115634#(< ~counter~0 16)} ~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; {115634#(< ~counter~0 16)} is VALID [2022-04-15 08:58:48,429 INFO L290 TraceCheckUtils]: 56: Hoare triple {115634#(< ~counter~0 16)} assume !(~c~0 >= ~b~0); {115634#(< ~counter~0 16)} is VALID [2022-04-15 08:58:48,430 INFO L290 TraceCheckUtils]: 55: Hoare triple {115634#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {115634#(< ~counter~0 16)} is VALID [2022-04-15 08:58:48,430 INFO L290 TraceCheckUtils]: 54: Hoare triple {115647#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115634#(< ~counter~0 16)} is VALID [2022-04-15 08:58:48,431 INFO L290 TraceCheckUtils]: 53: Hoare triple {115647#(< ~counter~0 15)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115647#(< ~counter~0 15)} is VALID [2022-04-15 08:58:48,431 INFO L290 TraceCheckUtils]: 52: Hoare triple {115647#(< ~counter~0 15)} assume !(~c~0 >= 2 * ~v~0); {115647#(< ~counter~0 15)} is VALID [2022-04-15 08:58:48,431 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {115204#true} {115647#(< ~counter~0 15)} #104#return; {115647#(< ~counter~0 15)} is VALID [2022-04-15 08:58:48,432 INFO L290 TraceCheckUtils]: 50: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-15 08:58:48,432 INFO L290 TraceCheckUtils]: 49: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-15 08:58:48,432 INFO L290 TraceCheckUtils]: 48: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-15 08:58:48,432 INFO L272 TraceCheckUtils]: 47: Hoare triple {115647#(< ~counter~0 15)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115204#true} is VALID [2022-04-15 08:58:48,432 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {115204#true} {115647#(< ~counter~0 15)} #102#return; {115647#(< ~counter~0 15)} is VALID [2022-04-15 08:58:48,432 INFO L290 TraceCheckUtils]: 45: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-15 08:58:48,432 INFO L290 TraceCheckUtils]: 44: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-15 08:58:48,432 INFO L290 TraceCheckUtils]: 43: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-15 08:58:48,432 INFO L272 TraceCheckUtils]: 42: Hoare triple {115647#(< ~counter~0 15)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115204#true} is VALID [2022-04-15 08:58:48,433 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {115204#true} {115647#(< ~counter~0 15)} #100#return; {115647#(< ~counter~0 15)} is VALID [2022-04-15 08:58:48,433 INFO L290 TraceCheckUtils]: 40: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-15 08:58:48,433 INFO L290 TraceCheckUtils]: 39: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-15 08:58:48,433 INFO L290 TraceCheckUtils]: 38: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-15 08:58:48,433 INFO L272 TraceCheckUtils]: 37: Hoare triple {115647#(< ~counter~0 15)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115204#true} is VALID [2022-04-15 08:58:48,434 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {115204#true} {115647#(< ~counter~0 15)} #98#return; {115647#(< ~counter~0 15)} is VALID [2022-04-15 08:58:48,434 INFO L290 TraceCheckUtils]: 35: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-15 08:58:48,434 INFO L290 TraceCheckUtils]: 34: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-15 08:58:48,434 INFO L290 TraceCheckUtils]: 33: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-15 08:58:48,434 INFO L272 TraceCheckUtils]: 32: Hoare triple {115647#(< ~counter~0 15)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115204#true} is VALID [2022-04-15 08:58:48,459 INFO L290 TraceCheckUtils]: 31: Hoare triple {115647#(< ~counter~0 15)} assume !!(#t~post8 < 20);havoc #t~post8; {115647#(< ~counter~0 15)} is VALID [2022-04-15 08:58:48,461 INFO L290 TraceCheckUtils]: 30: Hoare triple {115720#(< ~counter~0 14)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115647#(< ~counter~0 15)} is VALID [2022-04-15 08:58:48,462 INFO L290 TraceCheckUtils]: 29: Hoare triple {115720#(< ~counter~0 14)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115720#(< ~counter~0 14)} is VALID [2022-04-15 08:58:48,462 INFO L290 TraceCheckUtils]: 28: Hoare triple {115720#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {115720#(< ~counter~0 14)} is VALID [2022-04-15 08:58:48,463 INFO L290 TraceCheckUtils]: 27: Hoare triple {115730#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115720#(< ~counter~0 14)} is VALID [2022-04-15 08:58:48,463 INFO L290 TraceCheckUtils]: 26: Hoare triple {115730#(< ~counter~0 13)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115730#(< ~counter~0 13)} is VALID [2022-04-15 08:58:48,464 INFO L290 TraceCheckUtils]: 25: Hoare triple {115730#(< ~counter~0 13)} assume !!(#t~post6 < 20);havoc #t~post6; {115730#(< ~counter~0 13)} is VALID [2022-04-15 08:58:48,465 INFO L290 TraceCheckUtils]: 24: Hoare triple {115740#(< ~counter~0 12)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115730#(< ~counter~0 13)} is VALID [2022-04-15 08:58:48,465 INFO L290 TraceCheckUtils]: 23: Hoare triple {115740#(< ~counter~0 12)} ~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; {115740#(< ~counter~0 12)} is VALID [2022-04-15 08:58:48,465 INFO L290 TraceCheckUtils]: 22: Hoare triple {115740#(< ~counter~0 12)} assume !(~c~0 >= ~b~0); {115740#(< ~counter~0 12)} is VALID [2022-04-15 08:58:48,465 INFO L290 TraceCheckUtils]: 21: Hoare triple {115740#(< ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {115740#(< ~counter~0 12)} is VALID [2022-04-15 08:58:48,466 INFO L290 TraceCheckUtils]: 20: Hoare triple {115483#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115740#(< ~counter~0 12)} is VALID [2022-04-15 08:58:48,466 INFO L290 TraceCheckUtils]: 19: Hoare triple {115483#(<= ~counter~0 10)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115483#(<= ~counter~0 10)} is VALID [2022-04-15 08:58:48,467 INFO L290 TraceCheckUtils]: 18: Hoare triple {115483#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {115483#(<= ~counter~0 10)} is VALID [2022-04-15 08:58:48,467 INFO L290 TraceCheckUtils]: 17: Hoare triple {115410#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115483#(<= ~counter~0 10)} is VALID [2022-04-15 08:58:48,468 INFO L290 TraceCheckUtils]: 16: Hoare triple {115410#(<= ~counter~0 9)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:48,468 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115204#true} {115410#(<= ~counter~0 9)} #96#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:48,468 INFO L290 TraceCheckUtils]: 14: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-15 08:58:48,468 INFO L290 TraceCheckUtils]: 13: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-15 08:58:48,468 INFO L290 TraceCheckUtils]: 12: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-15 08:58:48,468 INFO L272 TraceCheckUtils]: 11: Hoare triple {115410#(<= ~counter~0 9)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {115204#true} is VALID [2022-04-15 08:58:48,469 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115204#true} {115410#(<= ~counter~0 9)} #94#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:48,469 INFO L290 TraceCheckUtils]: 9: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-15 08:58:48,469 INFO L290 TraceCheckUtils]: 8: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-15 08:58:48,469 INFO L290 TraceCheckUtils]: 7: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-15 08:58:48,469 INFO L272 TraceCheckUtils]: 6: Hoare triple {115410#(<= ~counter~0 9)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {115204#true} is VALID [2022-04-15 08:58:48,469 INFO L290 TraceCheckUtils]: 5: Hoare triple {115410#(<= ~counter~0 9)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:48,470 INFO L272 TraceCheckUtils]: 4: Hoare triple {115410#(<= ~counter~0 9)} call #t~ret9 := main(); {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:48,470 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115410#(<= ~counter~0 9)} {115204#true} #108#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:48,470 INFO L290 TraceCheckUtils]: 2: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:48,471 INFO L290 TraceCheckUtils]: 1: Hoare triple {115204#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);~counter~0 := 0; {115410#(<= ~counter~0 9)} is VALID [2022-04-15 08:58:48,471 INFO L272 TraceCheckUtils]: 0: Hoare triple {115204#true} call ULTIMATE.init(); {115204#true} is VALID [2022-04-15 08:58:48,471 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 16 proven. 56 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-15 08:58:48,471 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:58:48,471 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2075443432] [2022-04-15 08:58:48,471 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:58:48,471 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [506283610] [2022-04-15 08:58:48,471 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [506283610] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:58:48,471 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:58:48,471 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 24 [2022-04-15 08:58:48,472 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:58:48,472 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1748522054] [2022-04-15 08:58:48,472 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1748522054] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:58:48,472 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:58:48,472 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-15 08:58:48,472 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [897845229] [2022-04-15 08:58:48,472 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:58:48,472 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 98 [2022-04-15 08:58:48,472 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:58:48,473 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:48,544 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-15 08:58:48,545 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 08:58:48,545 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:58:48,545 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 08:58:48,545 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-15 08:58:48,545 INFO L87 Difference]: Start difference. First operand 1164 states and 1539 transitions. Second operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:52,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:52,996 INFO L93 Difference]: Finished difference Result 1434 states and 1877 transitions. [2022-04-15 08:58:52,996 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-15 08:58:52,996 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 98 [2022-04-15 08:58:52,996 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:58:52,996 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:52,998 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 266 transitions. [2022-04-15 08:58:52,998 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:53,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 266 transitions. [2022-04-15 08:58:53,005 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 266 transitions. [2022-04-15 08:58:53,245 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 266 edges. 266 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:58:53,326 INFO L225 Difference]: With dead ends: 1434 [2022-04-15 08:58:53,326 INFO L226 Difference]: Without dead ends: 1427 [2022-04-15 08:58:53,327 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 203 GetRequests, 172 SyntacticMatches, 1 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 68 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=407, Invalid=585, Unknown=0, NotChecked=0, Total=992 [2022-04-15 08:58:53,327 INFO L913 BasicCegarLoop]: 77 mSDtfsCounter, 243 mSDsluCounter, 256 mSDsCounter, 0 mSdLazyCounter, 179 mSolverCounterSat, 156 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 243 SdHoareTripleChecker+Valid, 333 SdHoareTripleChecker+Invalid, 335 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 156 IncrementalHoareTripleChecker+Valid, 179 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 08:58:53,327 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [243 Valid, 333 Invalid, 335 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [156 Valid, 179 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 08:58:53,328 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1427 states. [2022-04-15 08:58:56,481 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1427 to 1358. [2022-04-15 08:58:56,481 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:58:56,483 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-15 08:58:56,484 INFO L74 IsIncluded]: Start isIncluded. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-15 08:58:56,484 INFO L87 Difference]: Start difference. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-15 08:58:56,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:56,536 INFO L93 Difference]: Finished difference Result 1427 states and 1863 transitions. [2022-04-15 08:58:56,536 INFO L276 IsEmpty]: Start isEmpty. Operand 1427 states and 1863 transitions. [2022-04-15 08:58:56,537 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:58:56,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:58:56,539 INFO L74 IsIncluded]: Start isIncluded. First operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) Second operand 1427 states. [2022-04-15 08:58:56,540 INFO L87 Difference]: Start difference. First operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) Second operand 1427 states. [2022-04-15 08:58:56,592 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:58:56,593 INFO L93 Difference]: Finished difference Result 1427 states and 1863 transitions. [2022-04-15 08:58:56,593 INFO L276 IsEmpty]: Start isEmpty. Operand 1427 states and 1863 transitions. [2022-04-15 08:58:56,594 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:58:56,594 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:58:56,594 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:58:56,594 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:58:56,596 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-15 08:58:56,676 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1358 states to 1358 states and 1786 transitions. [2022-04-15 08:58:56,676 INFO L78 Accepts]: Start accepts. Automaton has 1358 states and 1786 transitions. Word has length 98 [2022-04-15 08:58:56,676 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:58:56,677 INFO L478 AbstractCegarLoop]: Abstraction has 1358 states and 1786 transitions. [2022-04-15 08:58:56,677 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:58:56,677 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1358 states and 1786 transitions. [2022-04-15 08:59:01,019 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1786 edges. 1786 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:59:01,019 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1786 transitions. [2022-04-15 08:59:01,020 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-15 08:59:01,020 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:59:01,020 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:59:01,036 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Forceful destruction successful, exit code 0 [2022-04-15 08:59:01,221 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 35 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable34 [2022-04-15 08:59:01,221 INFO L403 AbstractCegarLoop]: === Iteration 36 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:59:01,221 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:59:01,221 INFO L85 PathProgramCache]: Analyzing trace with hash -1348351390, now seen corresponding path program 1 times [2022-04-15 08:59:01,221 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:59:01,221 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [272740916] [2022-04-15 08:59:01,222 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:59:01,222 INFO L85 PathProgramCache]: Analyzing trace with hash -1348351390, now seen corresponding path program 2 times [2022-04-15 08:59:01,222 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:59:01,222 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1269188028] [2022-04-15 08:59:01,222 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:59:01,222 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:59:01,232 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:59:01,232 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1464632168] [2022-04-15 08:59:01,232 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 08:59:01,232 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:59:01,233 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:59:01,233 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:59:01,234 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Waiting until timeout for monitored process [2022-04-15 08:59:01,297 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 08:59:01,297 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:59:01,299 INFO L263 TraceCheckSpWp]: Trace formula consists of 309 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-15 08:59:01,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:59:01,319 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:59:01,718 INFO L272 TraceCheckUtils]: 0: Hoare triple {124269#true} call ULTIMATE.init(); {124269#true} is VALID [2022-04-15 08:59:01,718 INFO L290 TraceCheckUtils]: 1: Hoare triple {124269#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);~counter~0 := 0; {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,719 INFO L290 TraceCheckUtils]: 2: Hoare triple {124277#(<= ~counter~0 0)} assume true; {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,719 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124277#(<= ~counter~0 0)} {124269#true} #108#return; {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,719 INFO L272 TraceCheckUtils]: 4: Hoare triple {124277#(<= ~counter~0 0)} call #t~ret9 := main(); {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,719 INFO L290 TraceCheckUtils]: 5: Hoare triple {124277#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,720 INFO L272 TraceCheckUtils]: 6: Hoare triple {124277#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,720 INFO L290 TraceCheckUtils]: 7: Hoare triple {124277#(<= ~counter~0 0)} ~cond := #in~cond; {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,720 INFO L290 TraceCheckUtils]: 8: Hoare triple {124277#(<= ~counter~0 0)} assume !(0 == ~cond); {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,721 INFO L290 TraceCheckUtils]: 9: Hoare triple {124277#(<= ~counter~0 0)} assume true; {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,721 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124277#(<= ~counter~0 0)} {124277#(<= ~counter~0 0)} #94#return; {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,721 INFO L272 TraceCheckUtils]: 11: Hoare triple {124277#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,722 INFO L290 TraceCheckUtils]: 12: Hoare triple {124277#(<= ~counter~0 0)} ~cond := #in~cond; {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,722 INFO L290 TraceCheckUtils]: 13: Hoare triple {124277#(<= ~counter~0 0)} assume !(0 == ~cond); {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,722 INFO L290 TraceCheckUtils]: 14: Hoare triple {124277#(<= ~counter~0 0)} assume true; {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,722 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {124277#(<= ~counter~0 0)} {124277#(<= ~counter~0 0)} #96#return; {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,723 INFO L290 TraceCheckUtils]: 16: Hoare triple {124277#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {124277#(<= ~counter~0 0)} is VALID [2022-04-15 08:59:01,725 INFO L290 TraceCheckUtils]: 17: Hoare triple {124277#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124326#(<= ~counter~0 1)} is VALID [2022-04-15 08:59:01,725 INFO L290 TraceCheckUtils]: 18: Hoare triple {124326#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {124326#(<= ~counter~0 1)} is VALID [2022-04-15 08:59:01,725 INFO L290 TraceCheckUtils]: 19: Hoare triple {124326#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124326#(<= ~counter~0 1)} is VALID [2022-04-15 08:59:01,726 INFO L290 TraceCheckUtils]: 20: Hoare triple {124326#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124336#(<= ~counter~0 2)} is VALID [2022-04-15 08:59:01,726 INFO L290 TraceCheckUtils]: 21: Hoare triple {124336#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {124336#(<= ~counter~0 2)} is VALID [2022-04-15 08:59:01,727 INFO L290 TraceCheckUtils]: 22: Hoare triple {124336#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {124336#(<= ~counter~0 2)} is VALID [2022-04-15 08:59:01,727 INFO L290 TraceCheckUtils]: 23: Hoare triple {124336#(<= ~counter~0 2)} ~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; {124336#(<= ~counter~0 2)} is VALID [2022-04-15 08:59:01,728 INFO L290 TraceCheckUtils]: 24: Hoare triple {124336#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124349#(<= ~counter~0 3)} is VALID [2022-04-15 08:59:01,728 INFO L290 TraceCheckUtils]: 25: Hoare triple {124349#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {124349#(<= ~counter~0 3)} is VALID [2022-04-15 08:59:01,728 INFO L290 TraceCheckUtils]: 26: Hoare triple {124349#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124349#(<= ~counter~0 3)} is VALID [2022-04-15 08:59:01,729 INFO L290 TraceCheckUtils]: 27: Hoare triple {124349#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124359#(<= ~counter~0 4)} is VALID [2022-04-15 08:59:01,729 INFO L290 TraceCheckUtils]: 28: Hoare triple {124359#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {124359#(<= ~counter~0 4)} is VALID [2022-04-15 08:59:01,730 INFO L290 TraceCheckUtils]: 29: Hoare triple {124359#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124359#(<= ~counter~0 4)} is VALID [2022-04-15 08:59:01,730 INFO L290 TraceCheckUtils]: 30: Hoare triple {124359#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,731 INFO L290 TraceCheckUtils]: 31: Hoare triple {124369#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,731 INFO L272 TraceCheckUtils]: 32: Hoare triple {124369#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,732 INFO L290 TraceCheckUtils]: 33: Hoare triple {124369#(<= ~counter~0 5)} ~cond := #in~cond; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,732 INFO L290 TraceCheckUtils]: 34: Hoare triple {124369#(<= ~counter~0 5)} assume !(0 == ~cond); {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,732 INFO L290 TraceCheckUtils]: 35: Hoare triple {124369#(<= ~counter~0 5)} assume true; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,733 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {124369#(<= ~counter~0 5)} {124369#(<= ~counter~0 5)} #98#return; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,733 INFO L272 TraceCheckUtils]: 37: Hoare triple {124369#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,733 INFO L290 TraceCheckUtils]: 38: Hoare triple {124369#(<= ~counter~0 5)} ~cond := #in~cond; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,733 INFO L290 TraceCheckUtils]: 39: Hoare triple {124369#(<= ~counter~0 5)} assume !(0 == ~cond); {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,734 INFO L290 TraceCheckUtils]: 40: Hoare triple {124369#(<= ~counter~0 5)} assume true; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,734 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {124369#(<= ~counter~0 5)} {124369#(<= ~counter~0 5)} #100#return; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,735 INFO L272 TraceCheckUtils]: 42: Hoare triple {124369#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,735 INFO L290 TraceCheckUtils]: 43: Hoare triple {124369#(<= ~counter~0 5)} ~cond := #in~cond; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,735 INFO L290 TraceCheckUtils]: 44: Hoare triple {124369#(<= ~counter~0 5)} assume !(0 == ~cond); {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,735 INFO L290 TraceCheckUtils]: 45: Hoare triple {124369#(<= ~counter~0 5)} assume true; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,736 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {124369#(<= ~counter~0 5)} {124369#(<= ~counter~0 5)} #102#return; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,736 INFO L272 TraceCheckUtils]: 47: Hoare triple {124369#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,737 INFO L290 TraceCheckUtils]: 48: Hoare triple {124369#(<= ~counter~0 5)} ~cond := #in~cond; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,737 INFO L290 TraceCheckUtils]: 49: Hoare triple {124369#(<= ~counter~0 5)} assume !(0 == ~cond); {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,737 INFO L290 TraceCheckUtils]: 50: Hoare triple {124369#(<= ~counter~0 5)} assume true; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,737 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {124369#(<= ~counter~0 5)} {124369#(<= ~counter~0 5)} #104#return; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,738 INFO L290 TraceCheckUtils]: 52: Hoare triple {124369#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,738 INFO L290 TraceCheckUtils]: 53: Hoare triple {124369#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124369#(<= ~counter~0 5)} is VALID [2022-04-15 08:59:01,740 INFO L290 TraceCheckUtils]: 54: Hoare triple {124369#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124442#(<= ~counter~0 6)} is VALID [2022-04-15 08:59:01,740 INFO L290 TraceCheckUtils]: 55: Hoare triple {124442#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {124442#(<= ~counter~0 6)} is VALID [2022-04-15 08:59:01,740 INFO L290 TraceCheckUtils]: 56: Hoare triple {124442#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {124442#(<= ~counter~0 6)} is VALID [2022-04-15 08:59:01,741 INFO L290 TraceCheckUtils]: 57: Hoare triple {124442#(<= ~counter~0 6)} ~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; {124442#(<= ~counter~0 6)} is VALID [2022-04-15 08:59:01,742 INFO L290 TraceCheckUtils]: 58: Hoare triple {124442#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124455#(<= ~counter~0 7)} is VALID [2022-04-15 08:59:01,742 INFO L290 TraceCheckUtils]: 59: Hoare triple {124455#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {124455#(<= ~counter~0 7)} is VALID [2022-04-15 08:59:01,742 INFO L290 TraceCheckUtils]: 60: Hoare triple {124455#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124455#(<= ~counter~0 7)} is VALID [2022-04-15 08:59:01,743 INFO L290 TraceCheckUtils]: 61: Hoare triple {124455#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124465#(<= ~counter~0 8)} is VALID [2022-04-15 08:59:01,743 INFO L290 TraceCheckUtils]: 62: Hoare triple {124465#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {124465#(<= ~counter~0 8)} is VALID [2022-04-15 08:59:01,744 INFO L290 TraceCheckUtils]: 63: Hoare triple {124465#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124465#(<= ~counter~0 8)} is VALID [2022-04-15 08:59:01,744 INFO L290 TraceCheckUtils]: 64: Hoare triple {124465#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,745 INFO L290 TraceCheckUtils]: 65: Hoare triple {124475#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,745 INFO L272 TraceCheckUtils]: 66: Hoare triple {124475#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,745 INFO L290 TraceCheckUtils]: 67: Hoare triple {124475#(<= ~counter~0 9)} ~cond := #in~cond; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,746 INFO L290 TraceCheckUtils]: 68: Hoare triple {124475#(<= ~counter~0 9)} assume !(0 == ~cond); {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,746 INFO L290 TraceCheckUtils]: 69: Hoare triple {124475#(<= ~counter~0 9)} assume true; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,746 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {124475#(<= ~counter~0 9)} {124475#(<= ~counter~0 9)} #98#return; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,747 INFO L272 TraceCheckUtils]: 71: Hoare triple {124475#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,747 INFO L290 TraceCheckUtils]: 72: Hoare triple {124475#(<= ~counter~0 9)} ~cond := #in~cond; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,747 INFO L290 TraceCheckUtils]: 73: Hoare triple {124475#(<= ~counter~0 9)} assume !(0 == ~cond); {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,748 INFO L290 TraceCheckUtils]: 74: Hoare triple {124475#(<= ~counter~0 9)} assume true; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,748 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {124475#(<= ~counter~0 9)} {124475#(<= ~counter~0 9)} #100#return; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,748 INFO L272 TraceCheckUtils]: 76: Hoare triple {124475#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,749 INFO L290 TraceCheckUtils]: 77: Hoare triple {124475#(<= ~counter~0 9)} ~cond := #in~cond; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,749 INFO L290 TraceCheckUtils]: 78: Hoare triple {124475#(<= ~counter~0 9)} assume !(0 == ~cond); {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,749 INFO L290 TraceCheckUtils]: 79: Hoare triple {124475#(<= ~counter~0 9)} assume true; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,750 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {124475#(<= ~counter~0 9)} {124475#(<= ~counter~0 9)} #102#return; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,750 INFO L272 TraceCheckUtils]: 81: Hoare triple {124475#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,750 INFO L290 TraceCheckUtils]: 82: Hoare triple {124475#(<= ~counter~0 9)} ~cond := #in~cond; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,751 INFO L290 TraceCheckUtils]: 83: Hoare triple {124475#(<= ~counter~0 9)} assume !(0 == ~cond); {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,751 INFO L290 TraceCheckUtils]: 84: Hoare triple {124475#(<= ~counter~0 9)} assume true; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,751 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {124475#(<= ~counter~0 9)} {124475#(<= ~counter~0 9)} #104#return; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,751 INFO L290 TraceCheckUtils]: 86: Hoare triple {124475#(<= ~counter~0 9)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {124475#(<= ~counter~0 9)} is VALID [2022-04-15 08:59:01,752 INFO L290 TraceCheckUtils]: 87: Hoare triple {124475#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124545#(<= |main_#t~post8| 9)} is VALID [2022-04-15 08:59:01,752 INFO L290 TraceCheckUtils]: 88: Hoare triple {124545#(<= |main_#t~post8| 9)} assume !(#t~post8 < 20);havoc #t~post8; {124270#false} is VALID [2022-04-15 08:59:01,752 INFO L290 TraceCheckUtils]: 89: Hoare triple {124270#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124270#false} is VALID [2022-04-15 08:59:01,752 INFO L290 TraceCheckUtils]: 90: Hoare triple {124270#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124270#false} is VALID [2022-04-15 08:59:01,752 INFO L290 TraceCheckUtils]: 91: Hoare triple {124270#false} assume !(#t~post7 < 20);havoc #t~post7; {124270#false} is VALID [2022-04-15 08:59:01,752 INFO L290 TraceCheckUtils]: 92: Hoare triple {124270#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; {124270#false} is VALID [2022-04-15 08:59:01,752 INFO L290 TraceCheckUtils]: 93: Hoare triple {124270#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124270#false} is VALID [2022-04-15 08:59:01,753 INFO L290 TraceCheckUtils]: 94: Hoare triple {124270#false} assume !(#t~post6 < 20);havoc #t~post6; {124270#false} is VALID [2022-04-15 08:59:01,753 INFO L272 TraceCheckUtils]: 95: Hoare triple {124270#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)); {124270#false} is VALID [2022-04-15 08:59:01,753 INFO L290 TraceCheckUtils]: 96: Hoare triple {124270#false} ~cond := #in~cond; {124270#false} is VALID [2022-04-15 08:59:01,753 INFO L290 TraceCheckUtils]: 97: Hoare triple {124270#false} assume 0 == ~cond; {124270#false} is VALID [2022-04-15 08:59:01,753 INFO L290 TraceCheckUtils]: 98: Hoare triple {124270#false} assume !false; {124270#false} is VALID [2022-04-15 08:59:01,753 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 33 proven. 103 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-15 08:59:01,753 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:59:02,239 INFO L290 TraceCheckUtils]: 98: Hoare triple {124270#false} assume !false; {124270#false} is VALID [2022-04-15 08:59:02,239 INFO L290 TraceCheckUtils]: 97: Hoare triple {124270#false} assume 0 == ~cond; {124270#false} is VALID [2022-04-15 08:59:02,239 INFO L290 TraceCheckUtils]: 96: Hoare triple {124270#false} ~cond := #in~cond; {124270#false} is VALID [2022-04-15 08:59:02,239 INFO L272 TraceCheckUtils]: 95: Hoare triple {124270#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)); {124270#false} is VALID [2022-04-15 08:59:02,239 INFO L290 TraceCheckUtils]: 94: Hoare triple {124270#false} assume !(#t~post6 < 20);havoc #t~post6; {124270#false} is VALID [2022-04-15 08:59:02,239 INFO L290 TraceCheckUtils]: 93: Hoare triple {124270#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124270#false} is VALID [2022-04-15 08:59:02,240 INFO L290 TraceCheckUtils]: 92: Hoare triple {124270#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; {124270#false} is VALID [2022-04-15 08:59:02,240 INFO L290 TraceCheckUtils]: 91: Hoare triple {124270#false} assume !(#t~post7 < 20);havoc #t~post7; {124270#false} is VALID [2022-04-15 08:59:02,240 INFO L290 TraceCheckUtils]: 90: Hoare triple {124270#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124270#false} is VALID [2022-04-15 08:59:02,240 INFO L290 TraceCheckUtils]: 89: Hoare triple {124270#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124270#false} is VALID [2022-04-15 08:59:02,240 INFO L290 TraceCheckUtils]: 88: Hoare triple {124609#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {124270#false} is VALID [2022-04-15 08:59:02,240 INFO L290 TraceCheckUtils]: 87: Hoare triple {124613#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124609#(< |main_#t~post8| 20)} is VALID [2022-04-15 08:59:02,241 INFO L290 TraceCheckUtils]: 86: Hoare triple {124613#(< ~counter~0 20)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {124613#(< ~counter~0 20)} is VALID [2022-04-15 08:59:02,241 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {124269#true} {124613#(< ~counter~0 20)} #104#return; {124613#(< ~counter~0 20)} is VALID [2022-04-15 08:59:02,241 INFO L290 TraceCheckUtils]: 84: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-15 08:59:02,241 INFO L290 TraceCheckUtils]: 83: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-15 08:59:02,241 INFO L290 TraceCheckUtils]: 82: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-15 08:59:02,241 INFO L272 TraceCheckUtils]: 81: Hoare triple {124613#(< ~counter~0 20)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124269#true} is VALID [2022-04-15 08:59:02,242 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {124269#true} {124613#(< ~counter~0 20)} #102#return; {124613#(< ~counter~0 20)} is VALID [2022-04-15 08:59:02,242 INFO L290 TraceCheckUtils]: 79: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-15 08:59:02,242 INFO L290 TraceCheckUtils]: 78: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-15 08:59:02,242 INFO L290 TraceCheckUtils]: 77: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-15 08:59:02,242 INFO L272 TraceCheckUtils]: 76: Hoare triple {124613#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124269#true} is VALID [2022-04-15 08:59:02,242 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {124269#true} {124613#(< ~counter~0 20)} #100#return; {124613#(< ~counter~0 20)} is VALID [2022-04-15 08:59:02,243 INFO L290 TraceCheckUtils]: 74: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-15 08:59:02,243 INFO L290 TraceCheckUtils]: 73: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-15 08:59:02,243 INFO L290 TraceCheckUtils]: 72: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-15 08:59:02,243 INFO L272 TraceCheckUtils]: 71: Hoare triple {124613#(< ~counter~0 20)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124269#true} is VALID [2022-04-15 08:59:02,243 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {124269#true} {124613#(< ~counter~0 20)} #98#return; {124613#(< ~counter~0 20)} is VALID [2022-04-15 08:59:02,243 INFO L290 TraceCheckUtils]: 69: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-15 08:59:02,243 INFO L290 TraceCheckUtils]: 68: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-15 08:59:02,243 INFO L290 TraceCheckUtils]: 67: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-15 08:59:02,244 INFO L272 TraceCheckUtils]: 66: Hoare triple {124613#(< ~counter~0 20)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124269#true} is VALID [2022-04-15 08:59:02,244 INFO L290 TraceCheckUtils]: 65: Hoare triple {124613#(< ~counter~0 20)} assume !!(#t~post8 < 20);havoc #t~post8; {124613#(< ~counter~0 20)} is VALID [2022-04-15 08:59:02,246 INFO L290 TraceCheckUtils]: 64: Hoare triple {124683#(< ~counter~0 19)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124613#(< ~counter~0 20)} is VALID [2022-04-15 08:59:02,246 INFO L290 TraceCheckUtils]: 63: Hoare triple {124683#(< ~counter~0 19)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124683#(< ~counter~0 19)} is VALID [2022-04-15 08:59:02,246 INFO L290 TraceCheckUtils]: 62: Hoare triple {124683#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {124683#(< ~counter~0 19)} is VALID [2022-04-15 08:59:02,247 INFO L290 TraceCheckUtils]: 61: Hoare triple {124693#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124683#(< ~counter~0 19)} is VALID [2022-04-15 08:59:02,248 INFO L290 TraceCheckUtils]: 60: Hoare triple {124693#(< ~counter~0 18)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124693#(< ~counter~0 18)} is VALID [2022-04-15 08:59:02,248 INFO L290 TraceCheckUtils]: 59: Hoare triple {124693#(< ~counter~0 18)} assume !!(#t~post6 < 20);havoc #t~post6; {124693#(< ~counter~0 18)} is VALID [2022-04-15 08:59:02,249 INFO L290 TraceCheckUtils]: 58: Hoare triple {124703#(< ~counter~0 17)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124693#(< ~counter~0 18)} is VALID [2022-04-15 08:59:02,249 INFO L290 TraceCheckUtils]: 57: Hoare triple {124703#(< ~counter~0 17)} ~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; {124703#(< ~counter~0 17)} is VALID [2022-04-15 08:59:02,249 INFO L290 TraceCheckUtils]: 56: Hoare triple {124703#(< ~counter~0 17)} assume !(~c~0 >= ~b~0); {124703#(< ~counter~0 17)} is VALID [2022-04-15 08:59:02,250 INFO L290 TraceCheckUtils]: 55: Hoare triple {124703#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {124703#(< ~counter~0 17)} is VALID [2022-04-15 08:59:02,250 INFO L290 TraceCheckUtils]: 54: Hoare triple {124716#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124703#(< ~counter~0 17)} is VALID [2022-04-15 08:59:02,251 INFO L290 TraceCheckUtils]: 53: Hoare triple {124716#(< ~counter~0 16)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124716#(< ~counter~0 16)} is VALID [2022-04-15 08:59:02,251 INFO L290 TraceCheckUtils]: 52: Hoare triple {124716#(< ~counter~0 16)} assume !(~c~0 >= 2 * ~v~0); {124716#(< ~counter~0 16)} is VALID [2022-04-15 08:59:02,251 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {124269#true} {124716#(< ~counter~0 16)} #104#return; {124716#(< ~counter~0 16)} is VALID [2022-04-15 08:59:02,252 INFO L290 TraceCheckUtils]: 50: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-15 08:59:02,252 INFO L290 TraceCheckUtils]: 49: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-15 08:59:02,252 INFO L290 TraceCheckUtils]: 48: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-15 08:59:02,252 INFO L272 TraceCheckUtils]: 47: Hoare triple {124716#(< ~counter~0 16)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124269#true} is VALID [2022-04-15 08:59:02,252 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {124269#true} {124716#(< ~counter~0 16)} #102#return; {124716#(< ~counter~0 16)} is VALID [2022-04-15 08:59:02,252 INFO L290 TraceCheckUtils]: 45: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-15 08:59:02,252 INFO L290 TraceCheckUtils]: 44: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-15 08:59:02,252 INFO L290 TraceCheckUtils]: 43: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-15 08:59:02,252 INFO L272 TraceCheckUtils]: 42: Hoare triple {124716#(< ~counter~0 16)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124269#true} is VALID [2022-04-15 08:59:02,253 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {124269#true} {124716#(< ~counter~0 16)} #100#return; {124716#(< ~counter~0 16)} is VALID [2022-04-15 08:59:02,253 INFO L290 TraceCheckUtils]: 40: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-15 08:59:02,253 INFO L290 TraceCheckUtils]: 39: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-15 08:59:02,253 INFO L290 TraceCheckUtils]: 38: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-15 08:59:02,253 INFO L272 TraceCheckUtils]: 37: Hoare triple {124716#(< ~counter~0 16)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124269#true} is VALID [2022-04-15 08:59:02,254 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {124269#true} {124716#(< ~counter~0 16)} #98#return; {124716#(< ~counter~0 16)} is VALID [2022-04-15 08:59:02,254 INFO L290 TraceCheckUtils]: 35: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-15 08:59:02,254 INFO L290 TraceCheckUtils]: 34: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-15 08:59:02,254 INFO L290 TraceCheckUtils]: 33: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-15 08:59:02,254 INFO L272 TraceCheckUtils]: 32: Hoare triple {124716#(< ~counter~0 16)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124269#true} is VALID [2022-04-15 08:59:02,254 INFO L290 TraceCheckUtils]: 31: Hoare triple {124716#(< ~counter~0 16)} assume !!(#t~post8 < 20);havoc #t~post8; {124716#(< ~counter~0 16)} is VALID [2022-04-15 08:59:02,255 INFO L290 TraceCheckUtils]: 30: Hoare triple {124789#(< ~counter~0 15)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124716#(< ~counter~0 16)} is VALID [2022-04-15 08:59:02,256 INFO L290 TraceCheckUtils]: 29: Hoare triple {124789#(< ~counter~0 15)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124789#(< ~counter~0 15)} is VALID [2022-04-15 08:59:02,256 INFO L290 TraceCheckUtils]: 28: Hoare triple {124789#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {124789#(< ~counter~0 15)} is VALID [2022-04-15 08:59:02,259 INFO L290 TraceCheckUtils]: 27: Hoare triple {124799#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124789#(< ~counter~0 15)} is VALID [2022-04-15 08:59:02,259 INFO L290 TraceCheckUtils]: 26: Hoare triple {124799#(< ~counter~0 14)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124799#(< ~counter~0 14)} is VALID [2022-04-15 08:59:02,259 INFO L290 TraceCheckUtils]: 25: Hoare triple {124799#(< ~counter~0 14)} assume !!(#t~post6 < 20);havoc #t~post6; {124799#(< ~counter~0 14)} is VALID [2022-04-15 08:59:02,260 INFO L290 TraceCheckUtils]: 24: Hoare triple {124809#(< ~counter~0 13)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124799#(< ~counter~0 14)} is VALID [2022-04-15 08:59:02,260 INFO L290 TraceCheckUtils]: 23: Hoare triple {124809#(< ~counter~0 13)} ~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; {124809#(< ~counter~0 13)} is VALID [2022-04-15 08:59:02,261 INFO L290 TraceCheckUtils]: 22: Hoare triple {124809#(< ~counter~0 13)} assume !(~c~0 >= ~b~0); {124809#(< ~counter~0 13)} is VALID [2022-04-15 08:59:02,261 INFO L290 TraceCheckUtils]: 21: Hoare triple {124809#(< ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {124809#(< ~counter~0 13)} is VALID [2022-04-15 08:59:02,262 INFO L290 TraceCheckUtils]: 20: Hoare triple {124822#(< ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124809#(< ~counter~0 13)} is VALID [2022-04-15 08:59:02,262 INFO L290 TraceCheckUtils]: 19: Hoare triple {124822#(< ~counter~0 12)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124822#(< ~counter~0 12)} is VALID [2022-04-15 08:59:02,262 INFO L290 TraceCheckUtils]: 18: Hoare triple {124822#(< ~counter~0 12)} assume !!(#t~post6 < 20);havoc #t~post6; {124822#(< ~counter~0 12)} is VALID [2022-04-15 08:59:02,263 INFO L290 TraceCheckUtils]: 17: Hoare triple {124832#(< ~counter~0 11)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124822#(< ~counter~0 12)} is VALID [2022-04-15 08:59:02,263 INFO L290 TraceCheckUtils]: 16: Hoare triple {124832#(< ~counter~0 11)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {124832#(< ~counter~0 11)} is VALID [2022-04-15 08:59:02,264 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {124269#true} {124832#(< ~counter~0 11)} #96#return; {124832#(< ~counter~0 11)} is VALID [2022-04-15 08:59:02,264 INFO L290 TraceCheckUtils]: 14: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-15 08:59:02,264 INFO L290 TraceCheckUtils]: 13: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-15 08:59:02,264 INFO L290 TraceCheckUtils]: 12: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-15 08:59:02,264 INFO L272 TraceCheckUtils]: 11: Hoare triple {124832#(< ~counter~0 11)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {124269#true} is VALID [2022-04-15 08:59:02,264 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124269#true} {124832#(< ~counter~0 11)} #94#return; {124832#(< ~counter~0 11)} is VALID [2022-04-15 08:59:02,264 INFO L290 TraceCheckUtils]: 9: Hoare triple {124269#true} assume true; {124269#true} is VALID [2022-04-15 08:59:02,265 INFO L290 TraceCheckUtils]: 8: Hoare triple {124269#true} assume !(0 == ~cond); {124269#true} is VALID [2022-04-15 08:59:02,265 INFO L290 TraceCheckUtils]: 7: Hoare triple {124269#true} ~cond := #in~cond; {124269#true} is VALID [2022-04-15 08:59:02,265 INFO L272 TraceCheckUtils]: 6: Hoare triple {124832#(< ~counter~0 11)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {124269#true} is VALID [2022-04-15 08:59:02,265 INFO L290 TraceCheckUtils]: 5: Hoare triple {124832#(< ~counter~0 11)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {124832#(< ~counter~0 11)} is VALID [2022-04-15 08:59:02,265 INFO L272 TraceCheckUtils]: 4: Hoare triple {124832#(< ~counter~0 11)} call #t~ret9 := main(); {124832#(< ~counter~0 11)} is VALID [2022-04-15 08:59:02,265 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124832#(< ~counter~0 11)} {124269#true} #108#return; {124832#(< ~counter~0 11)} is VALID [2022-04-15 08:59:02,266 INFO L290 TraceCheckUtils]: 2: Hoare triple {124832#(< ~counter~0 11)} assume true; {124832#(< ~counter~0 11)} is VALID [2022-04-15 08:59:02,266 INFO L290 TraceCheckUtils]: 1: Hoare triple {124269#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);~counter~0 := 0; {124832#(< ~counter~0 11)} is VALID [2022-04-15 08:59:02,266 INFO L272 TraceCheckUtils]: 0: Hoare triple {124269#true} call ULTIMATE.init(); {124269#true} is VALID [2022-04-15 08:59:02,267 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 33 proven. 39 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-15 08:59:02,267 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:59:02,267 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1269188028] [2022-04-15 08:59:02,267 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:59:02,267 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1464632168] [2022-04-15 08:59:02,267 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1464632168] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 08:59:02,267 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 08:59:02,267 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-15 08:59:02,267 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:59:02,267 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [272740916] [2022-04-15 08:59:02,267 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [272740916] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:59:02,267 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:59:02,268 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 08:59:02,268 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [471064061] [2022-04-15 08:59:02,268 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:59:02,268 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 99 [2022-04-15 08:59:02,268 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:59:02,268 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:59:02,341 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:59:02,341 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 08:59:02,341 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:59:02,342 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 08:59:02,342 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-15 08:59:02,342 INFO L87 Difference]: Start difference. First operand 1358 states and 1786 transitions. Second operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:59:06,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:59:06,569 INFO L93 Difference]: Finished difference Result 1838 states and 2503 transitions. [2022-04-15 08:59:06,569 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-15 08:59:06,569 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 99 [2022-04-15 08:59:06,569 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:59:06,569 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:59:06,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-15 08:59:06,571 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:59:06,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-15 08:59:06,572 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 261 transitions. [2022-04-15 08:59:06,813 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:59:06,886 INFO L225 Difference]: With dead ends: 1838 [2022-04-15 08:59:06,886 INFO L226 Difference]: Without dead ends: 1358 [2022-04-15 08:59:06,888 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 204 GetRequests, 175 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=383, Invalid=547, Unknown=0, NotChecked=0, Total=930 [2022-04-15 08:59:06,889 INFO L913 BasicCegarLoop]: 72 mSDtfsCounter, 185 mSDsluCounter, 270 mSDsCounter, 0 mSdLazyCounter, 172 mSolverCounterSat, 101 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 185 SdHoareTripleChecker+Valid, 342 SdHoareTripleChecker+Invalid, 273 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 101 IncrementalHoareTripleChecker+Valid, 172 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 08:59:06,889 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [185 Valid, 342 Invalid, 273 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [101 Valid, 172 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 08:59:06,890 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1358 states. [2022-04-15 08:59:09,981 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1358 to 1334. [2022-04-15 08:59:09,981 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:59:09,983 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-15 08:59:09,983 INFO L74 IsIncluded]: Start isIncluded. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-15 08:59:09,984 INFO L87 Difference]: Start difference. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-15 08:59:10,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:59:10,033 INFO L93 Difference]: Finished difference Result 1358 states and 1763 transitions. [2022-04-15 08:59:10,033 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1763 transitions. [2022-04-15 08:59:10,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:59:10,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:59:10,036 INFO L74 IsIncluded]: Start isIncluded. First operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) Second operand 1358 states. [2022-04-15 08:59:10,037 INFO L87 Difference]: Start difference. First operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) Second operand 1358 states. [2022-04-15 08:59:10,085 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:59:10,085 INFO L93 Difference]: Finished difference Result 1358 states and 1763 transitions. [2022-04-15 08:59:10,086 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1763 transitions. [2022-04-15 08:59:10,087 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:59:10,087 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:59:10,087 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:59:10,087 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:59:10,089 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-15 08:59:10,166 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1334 states to 1334 states and 1736 transitions. [2022-04-15 08:59:10,166 INFO L78 Accepts]: Start accepts. Automaton has 1334 states and 1736 transitions. Word has length 99 [2022-04-15 08:59:10,166 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:59:10,166 INFO L478 AbstractCegarLoop]: Abstraction has 1334 states and 1736 transitions. [2022-04-15 08:59:10,167 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 08:59:10,167 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1334 states and 1736 transitions. [2022-04-15 08:59:14,469 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1736 edges. 1736 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:59:14,469 INFO L276 IsEmpty]: Start isEmpty. Operand 1334 states and 1736 transitions. [2022-04-15 08:59:14,470 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-15 08:59:14,470 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:59:14,470 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 08:59:14,487 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Forceful destruction successful, exit code 0 [2022-04-15 08:59:14,670 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 36 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable35 [2022-04-15 08:59:14,671 INFO L403 AbstractCegarLoop]: === Iteration 37 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:59:14,671 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:59:14,671 INFO L85 PathProgramCache]: Analyzing trace with hash -1350164207, now seen corresponding path program 5 times [2022-04-15 08:59:14,671 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:59:14,671 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [149249220] [2022-04-15 08:59:14,671 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:59:14,671 INFO L85 PathProgramCache]: Analyzing trace with hash -1350164207, now seen corresponding path program 6 times [2022-04-15 08:59:14,671 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:59:14,672 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1124377134] [2022-04-15 08:59:14,672 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:59:14,672 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:59:14,680 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:59:14,681 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1321164566] [2022-04-15 08:59:14,681 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 08:59:14,681 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:59:14,681 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:59:14,682 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:59:14,690 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Waiting until timeout for monitored process [2022-04-15 08:59:14,790 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-15 08:59:14,791 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:59:14,792 INFO L263 TraceCheckSpWp]: Trace formula consists of 242 conjuncts, 53 conjunts are in the unsatisfiable core [2022-04-15 08:59:14,809 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:59:14,812 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 08:59:15,792 INFO L272 TraceCheckUtils]: 0: Hoare triple {133960#true} call ULTIMATE.init(); {133960#true} is VALID [2022-04-15 08:59:15,792 INFO L290 TraceCheckUtils]: 1: Hoare triple {133960#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);~counter~0 := 0; {133960#true} is VALID [2022-04-15 08:59:15,792 INFO L290 TraceCheckUtils]: 2: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,792 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133960#true} {133960#true} #108#return; {133960#true} is VALID [2022-04-15 08:59:15,792 INFO L272 TraceCheckUtils]: 4: Hoare triple {133960#true} call #t~ret9 := main(); {133960#true} is VALID [2022-04-15 08:59:15,792 INFO L290 TraceCheckUtils]: 5: Hoare triple {133960#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {133960#true} is VALID [2022-04-15 08:59:15,793 INFO L272 TraceCheckUtils]: 6: Hoare triple {133960#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {133960#true} is VALID [2022-04-15 08:59:15,793 INFO L290 TraceCheckUtils]: 7: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,793 INFO L290 TraceCheckUtils]: 8: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,793 INFO L290 TraceCheckUtils]: 9: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,793 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {133960#true} {133960#true} #94#return; {133960#true} is VALID [2022-04-15 08:59:15,793 INFO L272 TraceCheckUtils]: 11: Hoare triple {133960#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {133960#true} is VALID [2022-04-15 08:59:15,793 INFO L290 TraceCheckUtils]: 12: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,793 INFO L290 TraceCheckUtils]: 13: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,793 INFO L290 TraceCheckUtils]: 14: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,793 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {133960#true} {133960#true} #96#return; {133960#true} is VALID [2022-04-15 08:59:15,794 INFO L290 TraceCheckUtils]: 16: Hoare triple {133960#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {134013#(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-15 08:59:15,794 INFO L290 TraceCheckUtils]: 17: Hoare triple {134013#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {134013#(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-15 08:59:15,794 INFO L290 TraceCheckUtils]: 18: Hoare triple {134013#(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 !!(#t~post6 < 20);havoc #t~post6; {134013#(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-15 08:59:15,795 INFO L290 TraceCheckUtils]: 19: Hoare triple {134013#(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; {134023#(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-15 08:59:15,795 INFO L290 TraceCheckUtils]: 20: Hoare triple {134023#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {134023#(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-15 08:59:15,796 INFO L290 TraceCheckUtils]: 21: Hoare triple {134023#(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 !!(#t~post7 < 20);havoc #t~post7; {134023#(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-15 08:59:15,796 INFO L290 TraceCheckUtils]: 22: Hoare triple {134023#(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; {134023#(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-15 08:59:15,796 INFO L290 TraceCheckUtils]: 23: Hoare triple {134023#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134023#(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-15 08:59:15,797 INFO L290 TraceCheckUtils]: 24: Hoare triple {134023#(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 !!(#t~post8 < 20);havoc #t~post8; {134023#(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-15 08:59:15,797 INFO L272 TraceCheckUtils]: 25: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,797 INFO L290 TraceCheckUtils]: 26: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,797 INFO L290 TraceCheckUtils]: 27: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,797 INFO L290 TraceCheckUtils]: 28: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,798 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {133960#true} {134023#(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))} #98#return; {134023#(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-15 08:59:15,798 INFO L272 TraceCheckUtils]: 30: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,798 INFO L290 TraceCheckUtils]: 31: Hoare triple {133960#true} ~cond := #in~cond; {134060#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:59:15,799 INFO L290 TraceCheckUtils]: 32: Hoare triple {134060#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:59:15,799 INFO L290 TraceCheckUtils]: 33: Hoare triple {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:59:15,800 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} {134023#(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))} #100#return; {134023#(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-15 08:59:15,800 INFO L272 TraceCheckUtils]: 35: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,800 INFO L290 TraceCheckUtils]: 36: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,800 INFO L290 TraceCheckUtils]: 37: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,800 INFO L290 TraceCheckUtils]: 38: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,801 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {133960#true} {134023#(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; {134023#(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-15 08:59:15,801 INFO L272 TraceCheckUtils]: 40: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,801 INFO L290 TraceCheckUtils]: 41: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,801 INFO L290 TraceCheckUtils]: 42: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,801 INFO L290 TraceCheckUtils]: 43: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,802 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {133960#true} {134023#(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; {134023#(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-15 08:59:15,803 INFO L290 TraceCheckUtils]: 45: Hoare triple {134023#(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; {134023#(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-15 08:59:15,803 INFO L290 TraceCheckUtils]: 46: Hoare triple {134023#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134023#(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-15 08:59:15,804 INFO L290 TraceCheckUtils]: 47: Hoare triple {134023#(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 !!(#t~post8 < 20);havoc #t~post8; {134023#(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-15 08:59:15,804 INFO L272 TraceCheckUtils]: 48: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,804 INFO L290 TraceCheckUtils]: 49: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,804 INFO L290 TraceCheckUtils]: 50: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,804 INFO L290 TraceCheckUtils]: 51: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,805 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {133960#true} {134023#(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))} #98#return; {134023#(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-15 08:59:15,805 INFO L272 TraceCheckUtils]: 53: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,805 INFO L290 TraceCheckUtils]: 54: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,805 INFO L290 TraceCheckUtils]: 55: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,805 INFO L290 TraceCheckUtils]: 56: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,806 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {133960#true} {134023#(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))} #100#return; {134023#(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-15 08:59:15,806 INFO L272 TraceCheckUtils]: 58: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,806 INFO L290 TraceCheckUtils]: 59: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,806 INFO L290 TraceCheckUtils]: 60: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,806 INFO L290 TraceCheckUtils]: 61: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,807 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {133960#true} {134023#(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; {134023#(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-15 08:59:15,807 INFO L272 TraceCheckUtils]: 63: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,807 INFO L290 TraceCheckUtils]: 64: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,807 INFO L290 TraceCheckUtils]: 65: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,807 INFO L290 TraceCheckUtils]: 66: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,808 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {133960#true} {134023#(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; {134023#(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-15 08:59:15,808 INFO L290 TraceCheckUtils]: 68: Hoare triple {134023#(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; {134023#(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-15 08:59:15,808 INFO L290 TraceCheckUtils]: 69: Hoare triple {134023#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134023#(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-15 08:59:15,809 INFO L290 TraceCheckUtils]: 70: Hoare triple {134023#(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 !!(#t~post8 < 20);havoc #t~post8; {134023#(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-15 08:59:15,809 INFO L272 TraceCheckUtils]: 71: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,809 INFO L290 TraceCheckUtils]: 72: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,809 INFO L290 TraceCheckUtils]: 73: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,809 INFO L290 TraceCheckUtils]: 74: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,810 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {133960#true} {134023#(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))} #98#return; {134023#(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-15 08:59:15,810 INFO L272 TraceCheckUtils]: 76: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,810 INFO L290 TraceCheckUtils]: 77: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,810 INFO L290 TraceCheckUtils]: 78: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,810 INFO L290 TraceCheckUtils]: 79: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,811 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {133960#true} {134023#(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))} #100#return; {134023#(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-15 08:59:15,811 INFO L272 TraceCheckUtils]: 81: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,811 INFO L290 TraceCheckUtils]: 82: Hoare triple {133960#true} ~cond := #in~cond; {133960#true} is VALID [2022-04-15 08:59:15,811 INFO L290 TraceCheckUtils]: 83: Hoare triple {133960#true} assume !(0 == ~cond); {133960#true} is VALID [2022-04-15 08:59:15,811 INFO L290 TraceCheckUtils]: 84: Hoare triple {133960#true} assume true; {133960#true} is VALID [2022-04-15 08:59:15,812 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {133960#true} {134023#(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; {134023#(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-15 08:59:15,812 INFO L272 TraceCheckUtils]: 86: Hoare triple {134023#(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)); {133960#true} is VALID [2022-04-15 08:59:15,812 INFO L290 TraceCheckUtils]: 87: Hoare triple {133960#true} ~cond := #in~cond; {134060#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:59:15,812 INFO L290 TraceCheckUtils]: 88: Hoare triple {134060#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:59:15,813 INFO L290 TraceCheckUtils]: 89: Hoare triple {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 08:59:15,814 INFO L284 TraceCheckUtils]: 90: Hoare quadruple {134064#(not (= |__VERIFIER_assert_#in~cond| 0))} {134023#(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; {134239#(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-15 08:59:15,814 INFO L290 TraceCheckUtils]: 91: Hoare triple {134239#(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); {134239#(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-15 08:59:15,820 INFO L290 TraceCheckUtils]: 92: Hoare triple {134239#(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))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:59:15,820 INFO L290 TraceCheckUtils]: 93: Hoare triple {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:59:15,821 INFO L290 TraceCheckUtils]: 94: Hoare triple {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:59:15,821 INFO L290 TraceCheckUtils]: 95: Hoare triple {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 08:59:15,824 INFO L290 TraceCheckUtils]: 96: Hoare triple {134246#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~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; {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-15 08:59:15,824 INFO L290 TraceCheckUtils]: 97: Hoare triple {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-15 08:59:15,825 INFO L290 TraceCheckUtils]: 98: Hoare triple {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-15 08:59:15,825 INFO L290 TraceCheckUtils]: 99: Hoare triple {134259#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} assume !(0 != ~b~0); {134269#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-15 08:59:15,826 INFO L272 TraceCheckUtils]: 100: Hoare triple {134269#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~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)); {134273#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 08:59:15,826 INFO L290 TraceCheckUtils]: 101: Hoare triple {134273#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {134277#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 08:59:15,827 INFO L290 TraceCheckUtils]: 102: Hoare triple {134277#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {133961#false} is VALID [2022-04-15 08:59:15,827 INFO L290 TraceCheckUtils]: 103: Hoare triple {133961#false} assume !false; {133961#false} is VALID [2022-04-15 08:59:15,827 INFO L134 CoverageAnalysis]: Checked inductivity of 319 backedges. 57 proven. 35 refuted. 0 times theorem prover too weak. 227 trivial. 0 not checked. [2022-04-15 08:59:15,827 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 08:59:33,541 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 08:59:33,780 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 08:59:33,780 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1124377134] [2022-04-15 08:59:33,780 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 08:59:33,780 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1321164566] [2022-04-15 08:59:33,780 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1321164566] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 08:59:33,780 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-15 08:59:33,780 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2022-04-15 08:59:33,780 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 08:59:33,781 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [149249220] [2022-04-15 08:59:33,781 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [149249220] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 08:59:33,781 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 08:59:33,781 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 08:59:33,781 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [893800304] [2022-04-15 08:59:33,781 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 08:59:33,781 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 104 [2022-04-15 08:59:33,781 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 08:59:33,781 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 08:59:33,842 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-15 08:59:33,843 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 08:59:33,843 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 08:59:33,843 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 08:59:33,843 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=224, Unknown=0, NotChecked=0, Total=272 [2022-04-15 08:59:33,843 INFO L87 Difference]: Start difference. First operand 1334 states and 1736 transitions. Second operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 08:59:39,310 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:59:39,310 INFO L93 Difference]: Finished difference Result 1565 states and 2045 transitions. [2022-04-15 08:59:39,310 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 08:59:39,310 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 104 [2022-04-15 08:59:39,311 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 08:59:39,311 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 08:59:39,311 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-15 08:59:39,312 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 08:59:39,312 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-15 08:59:39,312 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 135 transitions. [2022-04-15 08:59:39,489 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:59:39,605 INFO L225 Difference]: With dead ends: 1565 [2022-04-15 08:59:39,605 INFO L226 Difference]: Without dead ends: 1556 [2022-04-15 08:59:39,605 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 101 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=93, Invalid=413, Unknown=0, NotChecked=0, Total=506 [2022-04-15 08:59:39,606 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 67 mSDsluCounter, 296 mSDsCounter, 0 mSdLazyCounter, 379 mSolverCounterSat, 39 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 74 SdHoareTripleChecker+Valid, 347 SdHoareTripleChecker+Invalid, 418 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 379 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-15 08:59:39,606 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [74 Valid, 347 Invalid, 418 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 379 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-15 08:59:39,607 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1556 states. [2022-04-15 08:59:43,175 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1556 to 1518. [2022-04-15 08:59:43,176 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 08:59:43,177 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-15 08:59:43,178 INFO L74 IsIncluded]: Start isIncluded. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-15 08:59:43,179 INFO L87 Difference]: Start difference. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-15 08:59:43,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:59:43,246 INFO L93 Difference]: Finished difference Result 1556 states and 2026 transitions. [2022-04-15 08:59:43,246 INFO L276 IsEmpty]: Start isEmpty. Operand 1556 states and 2026 transitions. [2022-04-15 08:59:43,248 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:59:43,248 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:59:43,250 INFO L74 IsIncluded]: Start isIncluded. First operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) Second operand 1556 states. [2022-04-15 08:59:43,250 INFO L87 Difference]: Start difference. First operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) Second operand 1556 states. [2022-04-15 08:59:43,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 08:59:43,325 INFO L93 Difference]: Finished difference Result 1556 states and 2026 transitions. [2022-04-15 08:59:43,325 INFO L276 IsEmpty]: Start isEmpty. Operand 1556 states and 2026 transitions. [2022-04-15 08:59:43,327 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 08:59:43,327 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 08:59:43,327 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 08:59:43,327 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 08:59:43,329 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-15 08:59:43,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1518 states to 1518 states and 1985 transitions. [2022-04-15 08:59:43,420 INFO L78 Accepts]: Start accepts. Automaton has 1518 states and 1985 transitions. Word has length 104 [2022-04-15 08:59:43,420 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 08:59:43,420 INFO L478 AbstractCegarLoop]: Abstraction has 1518 states and 1985 transitions. [2022-04-15 08:59:43,420 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-15 08:59:43,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1518 states and 1985 transitions. [2022-04-15 08:59:48,071 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1985 edges. 1985 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 08:59:48,071 INFO L276 IsEmpty]: Start isEmpty. Operand 1518 states and 1985 transitions. [2022-04-15 08:59:48,072 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-15 08:59:48,072 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 08:59:48,072 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 5, 5, 3, 3, 3, 3, 3, 3, 3, 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] [2022-04-15 08:59:48,088 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Forceful destruction successful, exit code 0 [2022-04-15 08:59:48,274 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable36,37 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:59:48,274 INFO L403 AbstractCegarLoop]: === Iteration 38 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 08:59:48,275 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 08:59:48,275 INFO L85 PathProgramCache]: Analyzing trace with hash -1433350311, now seen corresponding path program 5 times [2022-04-15 08:59:48,275 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 08:59:48,275 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1727675008] [2022-04-15 08:59:48,275 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 08:59:48,275 INFO L85 PathProgramCache]: Analyzing trace with hash -1433350311, now seen corresponding path program 6 times [2022-04-15 08:59:48,275 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 08:59:48,275 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [964012523] [2022-04-15 08:59:48,275 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 08:59:48,276 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 08:59:48,289 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 08:59:48,289 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1548888119] [2022-04-15 08:59:48,289 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 08:59:48,289 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 08:59:48,289 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 08:59:48,290 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 08:59:48,291 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Waiting until timeout for monitored process [2022-04-15 08:59:48,348 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-15 08:59:48,348 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 08:59:48,349 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-15 08:59:48,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 08:59:48,396 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:00:03,220 INFO L272 TraceCheckUtils]: 0: Hoare triple {143620#true} call ULTIMATE.init(); {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L290 TraceCheckUtils]: 1: Hoare triple {143620#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);~counter~0 := 0; {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L290 TraceCheckUtils]: 2: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {143620#true} {143620#true} #108#return; {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L272 TraceCheckUtils]: 4: Hoare triple {143620#true} call #t~ret9 := main(); {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L290 TraceCheckUtils]: 5: Hoare triple {143620#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L272 TraceCheckUtils]: 6: Hoare triple {143620#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L290 TraceCheckUtils]: 7: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L290 TraceCheckUtils]: 8: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L290 TraceCheckUtils]: 9: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {143620#true} {143620#true} #94#return; {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L272 TraceCheckUtils]: 11: Hoare triple {143620#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:03,221 INFO L290 TraceCheckUtils]: 12: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:03,222 INFO L290 TraceCheckUtils]: 13: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:03,222 INFO L290 TraceCheckUtils]: 14: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:03,222 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {143620#true} {143620#true} #96#return; {143620#true} is VALID [2022-04-15 09:00:03,222 INFO L290 TraceCheckUtils]: 16: Hoare triple {143620#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,222 INFO L290 TraceCheckUtils]: 17: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,223 INFO L290 TraceCheckUtils]: 18: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 20);havoc #t~post6; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,223 INFO L290 TraceCheckUtils]: 19: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,224 INFO L290 TraceCheckUtils]: 20: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,224 INFO L290 TraceCheckUtils]: 21: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,224 INFO L290 TraceCheckUtils]: 22: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,225 INFO L290 TraceCheckUtils]: 23: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,225 INFO L290 TraceCheckUtils]: 24: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post8 < 20);havoc #t~post8; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,225 INFO L272 TraceCheckUtils]: 25: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:03,225 INFO L290 TraceCheckUtils]: 26: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:03,225 INFO L290 TraceCheckUtils]: 27: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:03,225 INFO L290 TraceCheckUtils]: 28: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:03,226 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {143620#true} {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #98#return; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,226 INFO L272 TraceCheckUtils]: 30: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:03,226 INFO L290 TraceCheckUtils]: 31: Hoare triple {143620#true} ~cond := #in~cond; {143719#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:00:03,227 INFO L290 TraceCheckUtils]: 32: Hoare triple {143719#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:00:03,227 INFO L290 TraceCheckUtils]: 33: Hoare triple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:00:03,227 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #100#return; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,227 INFO L272 TraceCheckUtils]: 35: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:03,228 INFO L290 TraceCheckUtils]: 36: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:03,228 INFO L290 TraceCheckUtils]: 37: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:03,228 INFO L290 TraceCheckUtils]: 38: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:03,228 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {143620#true} {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #102#return; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,228 INFO L272 TraceCheckUtils]: 40: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:03,228 INFO L290 TraceCheckUtils]: 41: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:03,228 INFO L290 TraceCheckUtils]: 42: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:03,229 INFO L290 TraceCheckUtils]: 43: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:03,229 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {143620#true} {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #104#return; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,229 INFO L290 TraceCheckUtils]: 45: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= 2 * ~v~0); {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,230 INFO L290 TraceCheckUtils]: 46: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,230 INFO L290 TraceCheckUtils]: 47: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,231 INFO L290 TraceCheckUtils]: 48: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 20);havoc #t~post7; {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,231 INFO L290 TraceCheckUtils]: 49: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-15 09:00:03,231 INFO L290 TraceCheckUtils]: 50: Hoare triple {143673#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~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; {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 09:00:03,232 INFO L290 TraceCheckUtils]: 51: Hoare triple {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 09:00:03,232 INFO L290 TraceCheckUtils]: 52: Hoare triple {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 20);havoc #t~post6; {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-15 09:00:03,232 INFO L290 TraceCheckUtils]: 53: Hoare triple {143778#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-15 09:00:03,233 INFO L290 TraceCheckUtils]: 54: Hoare triple {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-15 09:00:03,233 INFO L290 TraceCheckUtils]: 55: Hoare triple {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-15 09:00:03,234 INFO L290 TraceCheckUtils]: 56: Hoare triple {143788#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-15 09:00:03,234 INFO L290 TraceCheckUtils]: 57: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-15 09:00:03,234 INFO L290 TraceCheckUtils]: 58: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-15 09:00:03,234 INFO L272 TraceCheckUtils]: 59: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:03,234 INFO L290 TraceCheckUtils]: 60: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:03,235 INFO L290 TraceCheckUtils]: 61: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:03,235 INFO L290 TraceCheckUtils]: 62: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:03,235 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {143620#true} {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #98#return; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-15 09:00:03,235 INFO L272 TraceCheckUtils]: 64: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:03,235 INFO L290 TraceCheckUtils]: 65: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:03,235 INFO L290 TraceCheckUtils]: 66: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:03,236 INFO L290 TraceCheckUtils]: 67: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:03,236 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {143620#true} {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #100#return; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-15 09:00:03,236 INFO L272 TraceCheckUtils]: 69: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:03,236 INFO L290 TraceCheckUtils]: 70: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:03,236 INFO L290 TraceCheckUtils]: 71: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:03,237 INFO L290 TraceCheckUtils]: 72: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:03,237 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {143620#true} {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #102#return; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-15 09:00:03,237 INFO L272 TraceCheckUtils]: 74: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:03,237 INFO L290 TraceCheckUtils]: 75: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:03,237 INFO L290 TraceCheckUtils]: 76: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:03,237 INFO L290 TraceCheckUtils]: 77: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:03,238 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {143620#true} {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #104#return; {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-15 09:00:03,238 INFO L290 TraceCheckUtils]: 79: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} assume !(~c~0 >= 2 * ~v~0); {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-15 09:00:03,239 INFO L290 TraceCheckUtils]: 80: Hoare triple {143798#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 09:00:03,239 INFO L290 TraceCheckUtils]: 81: Hoare triple {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 09:00:03,240 INFO L290 TraceCheckUtils]: 82: Hoare triple {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 09:00:03,240 INFO L290 TraceCheckUtils]: 83: Hoare triple {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 09:00:03,241 INFO L290 TraceCheckUtils]: 84: Hoare triple {143871#(and (= main_~p~0 0) (= main_~r~0 1) (= 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; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-15 09:00:03,241 INFO L290 TraceCheckUtils]: 85: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-15 09:00:03,241 INFO L290 TraceCheckUtils]: 86: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post6 < 20);havoc #t~post6; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-15 09:00:03,242 INFO L290 TraceCheckUtils]: 87: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~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; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-15 09:00:03,242 INFO L290 TraceCheckUtils]: 88: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-15 09:00:03,243 INFO L290 TraceCheckUtils]: 89: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post7 < 20);havoc #t~post7; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-15 09:00:03,243 INFO L290 TraceCheckUtils]: 90: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~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; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-15 09:00:03,243 INFO L290 TraceCheckUtils]: 91: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-15 09:00:03,244 INFO L290 TraceCheckUtils]: 92: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post8 < 20);havoc #t~post8; {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-15 09:00:03,244 INFO L272 TraceCheckUtils]: 93: Hoare triple {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~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)); {143620#true} is VALID [2022-04-15 09:00:03,244 INFO L290 TraceCheckUtils]: 94: Hoare triple {143620#true} ~cond := #in~cond; {143719#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:00:03,244 INFO L290 TraceCheckUtils]: 95: Hoare triple {143719#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:00:03,245 INFO L290 TraceCheckUtils]: 96: Hoare triple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:00:03,254 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} {143884#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #98#return; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-15 09:00:03,255 INFO L272 TraceCheckUtils]: 98: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* 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)); {143928#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:00:03,255 INFO L290 TraceCheckUtils]: 99: Hoare triple {143928#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {143932#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:00:03,255 INFO L290 TraceCheckUtils]: 100: Hoare triple {143932#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {143621#false} is VALID [2022-04-15 09:00:03,256 INFO L290 TraceCheckUtils]: 101: Hoare triple {143621#false} assume !false; {143621#false} is VALID [2022-04-15 09:00:03,256 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 40 proven. 73 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2022-04-15 09:00:03,256 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:00:31,074 INFO L290 TraceCheckUtils]: 101: Hoare triple {143621#false} assume !false; {143621#false} is VALID [2022-04-15 09:00:31,075 INFO L290 TraceCheckUtils]: 100: Hoare triple {143932#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {143621#false} is VALID [2022-04-15 09:00:31,075 INFO L290 TraceCheckUtils]: 99: Hoare triple {143928#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {143932#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:00:31,076 INFO L272 TraceCheckUtils]: 98: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* 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)); {143928#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:00:31,076 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #98#return; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-15 09:00:31,077 INFO L290 TraceCheckUtils]: 96: Hoare triple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:00:31,077 INFO L290 TraceCheckUtils]: 95: Hoare triple {143961#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:00:31,077 INFO L290 TraceCheckUtils]: 94: Hoare triple {143620#true} ~cond := #in~cond; {143961#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:00:31,077 INFO L272 TraceCheckUtils]: 93: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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)); {143620#true} is VALID [2022-04-15 09:00:31,078 INFO L290 TraceCheckUtils]: 92: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post8 < 20);havoc #t~post8; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 09:00:31,078 INFO L290 TraceCheckUtils]: 91: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 09:00:31,079 INFO L290 TraceCheckUtils]: 90: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 09:00:31,079 INFO L290 TraceCheckUtils]: 89: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post7 < 20);havoc #t~post7; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 09:00:31,080 INFO L290 TraceCheckUtils]: 88: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 09:00:31,080 INFO L290 TraceCheckUtils]: 87: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 09:00:31,081 INFO L290 TraceCheckUtils]: 86: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 20);havoc #t~post6; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 09:00:31,081 INFO L290 TraceCheckUtils]: 85: Hoare triple {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 09:00:31,984 INFO L290 TraceCheckUtils]: 84: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~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; {143951#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-15 09:00:31,985 INFO L290 TraceCheckUtils]: 83: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !(~c~0 >= ~b~0); {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-15 09:00:31,985 INFO L290 TraceCheckUtils]: 82: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(#t~post7 < 20);havoc #t~post7; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-15 09:00:31,985 INFO L290 TraceCheckUtils]: 81: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-15 09:00:32,047 INFO L290 TraceCheckUtils]: 80: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-15 09:00:32,047 INFO L290 TraceCheckUtils]: 79: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} assume !(~c~0 >= 2 * ~v~0); {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-15 09:00:32,048 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {143620#true} {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #104#return; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-15 09:00:32,048 INFO L290 TraceCheckUtils]: 77: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:32,048 INFO L290 TraceCheckUtils]: 76: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:32,048 INFO L290 TraceCheckUtils]: 75: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:32,048 INFO L272 TraceCheckUtils]: 74: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:32,049 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {143620#true} {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #102#return; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-15 09:00:32,049 INFO L290 TraceCheckUtils]: 72: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:32,049 INFO L290 TraceCheckUtils]: 71: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:32,049 INFO L290 TraceCheckUtils]: 70: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:32,049 INFO L272 TraceCheckUtils]: 69: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:32,050 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {143620#true} {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #100#return; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-15 09:00:32,050 INFO L290 TraceCheckUtils]: 67: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:32,050 INFO L290 TraceCheckUtils]: 66: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:32,050 INFO L290 TraceCheckUtils]: 65: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:32,050 INFO L272 TraceCheckUtils]: 64: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:32,051 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {143620#true} {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #98#return; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-15 09:00:32,051 INFO L290 TraceCheckUtils]: 62: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:32,051 INFO L290 TraceCheckUtils]: 61: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:32,051 INFO L290 TraceCheckUtils]: 60: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:32,051 INFO L272 TraceCheckUtils]: 59: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:32,052 INFO L290 TraceCheckUtils]: 58: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} assume !!(#t~post8 < 20);havoc #t~post8; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-15 09:00:32,052 INFO L290 TraceCheckUtils]: 57: Hoare triple {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-15 09:00:32,053 INFO L290 TraceCheckUtils]: 56: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {144005#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-15 09:00:32,054 INFO L290 TraceCheckUtils]: 55: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(#t~post7 < 20);havoc #t~post7; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-15 09:00:32,054 INFO L290 TraceCheckUtils]: 54: Hoare triple {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-15 09:00:32,055 INFO L290 TraceCheckUtils]: 53: Hoare triple {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= 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; {143992#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-15 09:00:32,055 INFO L290 TraceCheckUtils]: 52: Hoare triple {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post6 < 20);havoc #t~post6; {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 09:00:32,056 INFO L290 TraceCheckUtils]: 51: Hoare triple {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 09:00:32,056 INFO L290 TraceCheckUtils]: 50: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~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; {144087#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-15 09:00:32,056 INFO L290 TraceCheckUtils]: 49: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !(~c~0 >= ~b~0); {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-15 09:00:32,057 INFO L290 TraceCheckUtils]: 48: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !!(#t~post7 < 20);havoc #t~post7; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-15 09:00:32,057 INFO L290 TraceCheckUtils]: 47: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-15 09:00:32,058 INFO L290 TraceCheckUtils]: 46: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-15 09:00:32,058 INFO L290 TraceCheckUtils]: 45: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !(~c~0 >= 2 * ~v~0); {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-15 09:00:32,058 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {143620#true} {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #104#return; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-15 09:00:32,059 INFO L290 TraceCheckUtils]: 43: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:32,059 INFO L290 TraceCheckUtils]: 42: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:32,059 INFO L290 TraceCheckUtils]: 41: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:32,059 INFO L272 TraceCheckUtils]: 40: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:32,059 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {143620#true} {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #102#return; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-15 09:00:32,059 INFO L290 TraceCheckUtils]: 38: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:32,060 INFO L290 TraceCheckUtils]: 37: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:32,060 INFO L290 TraceCheckUtils]: 36: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:32,060 INFO L272 TraceCheckUtils]: 35: Hoare triple {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:32,060 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} {143620#true} #100#return; {143924#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-15 09:00:32,060 INFO L290 TraceCheckUtils]: 33: Hoare triple {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:00:32,061 INFO L290 TraceCheckUtils]: 32: Hoare triple {143961#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {143723#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:00:32,061 INFO L290 TraceCheckUtils]: 31: Hoare triple {143620#true} ~cond := #in~cond; {143961#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:00:32,061 INFO L272 TraceCheckUtils]: 30: Hoare triple {143620#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:32,061 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {143620#true} {143620#true} #98#return; {143620#true} is VALID [2022-04-15 09:00:32,061 INFO L290 TraceCheckUtils]: 28: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:32,061 INFO L290 TraceCheckUtils]: 27: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:32,061 INFO L290 TraceCheckUtils]: 26: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L272 TraceCheckUtils]: 25: Hoare triple {143620#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 24: Hoare triple {143620#true} assume !!(#t~post8 < 20);havoc #t~post8; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 23: Hoare triple {143620#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 22: Hoare triple {143620#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 21: Hoare triple {143620#true} assume !!(#t~post7 < 20);havoc #t~post7; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 20: Hoare triple {143620#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 19: Hoare triple {143620#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 18: Hoare triple {143620#true} assume !!(#t~post6 < 20);havoc #t~post6; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 17: Hoare triple {143620#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 16: Hoare triple {143620#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {143620#true} {143620#true} #96#return; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 14: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 13: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L290 TraceCheckUtils]: 12: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:32,062 INFO L272 TraceCheckUtils]: 11: Hoare triple {143620#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:32,063 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {143620#true} {143620#true} #94#return; {143620#true} is VALID [2022-04-15 09:00:32,063 INFO L290 TraceCheckUtils]: 9: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:32,063 INFO L290 TraceCheckUtils]: 8: Hoare triple {143620#true} assume !(0 == ~cond); {143620#true} is VALID [2022-04-15 09:00:32,063 INFO L290 TraceCheckUtils]: 7: Hoare triple {143620#true} ~cond := #in~cond; {143620#true} is VALID [2022-04-15 09:00:32,063 INFO L272 TraceCheckUtils]: 6: Hoare triple {143620#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {143620#true} is VALID [2022-04-15 09:00:32,063 INFO L290 TraceCheckUtils]: 5: Hoare triple {143620#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {143620#true} is VALID [2022-04-15 09:00:32,063 INFO L272 TraceCheckUtils]: 4: Hoare triple {143620#true} call #t~ret9 := main(); {143620#true} is VALID [2022-04-15 09:00:32,063 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {143620#true} {143620#true} #108#return; {143620#true} is VALID [2022-04-15 09:00:32,063 INFO L290 TraceCheckUtils]: 2: Hoare triple {143620#true} assume true; {143620#true} is VALID [2022-04-15 09:00:32,063 INFO L290 TraceCheckUtils]: 1: Hoare triple {143620#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);~counter~0 := 0; {143620#true} is VALID [2022-04-15 09:00:32,063 INFO L272 TraceCheckUtils]: 0: Hoare triple {143620#true} call ULTIMATE.init(); {143620#true} is VALID [2022-04-15 09:00:32,064 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 66 proven. 47 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2022-04-15 09:00:32,064 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:00:32,064 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [964012523] [2022-04-15 09:00:32,064 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:00:32,064 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1548888119] [2022-04-15 09:00:32,064 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1548888119] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:00:32,064 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:00:32,064 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11] total 18 [2022-04-15 09:00:32,064 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:00:32,064 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1727675008] [2022-04-15 09:00:32,065 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1727675008] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:00:32,065 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:00:32,065 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 09:00:32,065 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [175484464] [2022-04-15 09:00:32,065 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:00:32,065 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 102 [2022-04-15 09:00:32,065 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:00:32,065 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-15 09:00:32,165 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:00:32,165 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 09:00:32,165 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:00:32,166 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 09:00:32,166 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=258, Unknown=0, NotChecked=0, Total=306 [2022-04-15 09:00:32,166 INFO L87 Difference]: Start difference. First operand 1518 states and 1985 transitions. Second operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-15 09:00:40,139 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:00:40,139 INFO L93 Difference]: Finished difference Result 1833 states and 2418 transitions. [2022-04-15 09:00:40,139 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-15 09:00:40,139 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 102 [2022-04-15 09:00:40,139 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:00:40,139 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-15 09:00:40,141 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 245 transitions. [2022-04-15 09:00:40,141 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-15 09:00:40,143 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 245 transitions. [2022-04-15 09:00:40,143 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 245 transitions. [2022-04-15 09:00:40,464 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 245 edges. 245 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:00:40,610 INFO L225 Difference]: With dead ends: 1833 [2022-04-15 09:00:40,610 INFO L226 Difference]: Without dead ends: 1831 [2022-04-15 09:00:40,611 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 183 SyntacticMatches, 4 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 107 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=128, Invalid=628, Unknown=0, NotChecked=0, Total=756 [2022-04-15 09:00:40,611 INFO L913 BasicCegarLoop]: 92 mSDtfsCounter, 149 mSDsluCounter, 498 mSDsCounter, 0 mSdLazyCounter, 779 mSolverCounterSat, 98 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 156 SdHoareTripleChecker+Valid, 590 SdHoareTripleChecker+Invalid, 877 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 98 IncrementalHoareTripleChecker+Valid, 779 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-15 09:00:40,611 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [156 Valid, 590 Invalid, 877 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [98 Valid, 779 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-15 09:00:40,612 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1831 states. [2022-04-15 09:00:44,978 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1831 to 1765. [2022-04-15 09:00:44,978 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:00:44,980 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-15 09:00:44,981 INFO L74 IsIncluded]: Start isIncluded. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-15 09:00:44,982 INFO L87 Difference]: Start difference. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-15 09:00:45,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:00:45,074 INFO L93 Difference]: Finished difference Result 1831 states and 2416 transitions. [2022-04-15 09:00:45,074 INFO L276 IsEmpty]: Start isEmpty. Operand 1831 states and 2416 transitions. [2022-04-15 09:00:45,076 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:00:45,076 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:00:45,078 INFO L74 IsIncluded]: Start isIncluded. First operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) Second operand 1831 states. [2022-04-15 09:00:45,079 INFO L87 Difference]: Start difference. First operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) Second operand 1831 states. [2022-04-15 09:00:45,169 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:00:45,169 INFO L93 Difference]: Finished difference Result 1831 states and 2416 transitions. [2022-04-15 09:00:45,169 INFO L276 IsEmpty]: Start isEmpty. Operand 1831 states and 2416 transitions. [2022-04-15 09:00:45,171 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:00:45,171 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:00:45,171 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:00:45,171 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:00:45,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-15 09:00:45,309 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1765 states to 1765 states and 2340 transitions. [2022-04-15 09:00:45,310 INFO L78 Accepts]: Start accepts. Automaton has 1765 states and 2340 transitions. Word has length 102 [2022-04-15 09:00:45,310 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:00:45,310 INFO L478 AbstractCegarLoop]: Abstraction has 1765 states and 2340 transitions. [2022-04-15 09:00:45,310 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-15 09:00:45,310 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1765 states and 2340 transitions. [2022-04-15 09:00:51,550 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2340 edges. 2340 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:00:51,550 INFO L276 IsEmpty]: Start isEmpty. Operand 1765 states and 2340 transitions. [2022-04-15 09:00:51,551 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 104 [2022-04-15 09:00:51,551 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:00:51,551 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 6, 5, 4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:00:51,567 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Ended with exit code 0 [2022-04-15 09:00:51,751 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 38 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable37 [2022-04-15 09:00:51,752 INFO L403 AbstractCegarLoop]: === Iteration 39 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:00:51,752 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:00:51,752 INFO L85 PathProgramCache]: Analyzing trace with hash -2051750892, now seen corresponding path program 7 times [2022-04-15 09:00:51,752 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:00:51,752 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1093337137] [2022-04-15 09:00:51,752 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:00:51,752 INFO L85 PathProgramCache]: Analyzing trace with hash -2051750892, now seen corresponding path program 8 times [2022-04-15 09:00:51,753 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:00:51,753 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1763750486] [2022-04-15 09:00:51,753 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:00:51,753 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:00:51,763 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:00:51,764 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1528831053] [2022-04-15 09:00:51,764 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:00:51,764 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:00:51,764 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:00:51,765 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:00:51,765 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Waiting until timeout for monitored process [2022-04-15 09:00:51,823 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:00:51,823 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:00:51,824 INFO L263 TraceCheckSpWp]: Trace formula consists of 319 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-15 09:00:51,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:00:51,845 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:00:52,334 INFO L272 TraceCheckUtils]: 0: Hoare triple {155127#true} call ULTIMATE.init(); {155127#true} is VALID [2022-04-15 09:00:52,335 INFO L290 TraceCheckUtils]: 1: Hoare triple {155127#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);~counter~0 := 0; {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,336 INFO L290 TraceCheckUtils]: 2: Hoare triple {155135#(<= ~counter~0 0)} assume true; {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,336 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155135#(<= ~counter~0 0)} {155127#true} #108#return; {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,336 INFO L272 TraceCheckUtils]: 4: Hoare triple {155135#(<= ~counter~0 0)} call #t~ret9 := main(); {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,336 INFO L290 TraceCheckUtils]: 5: Hoare triple {155135#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,337 INFO L272 TraceCheckUtils]: 6: Hoare triple {155135#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,337 INFO L290 TraceCheckUtils]: 7: Hoare triple {155135#(<= ~counter~0 0)} ~cond := #in~cond; {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,337 INFO L290 TraceCheckUtils]: 8: Hoare triple {155135#(<= ~counter~0 0)} assume !(0 == ~cond); {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,338 INFO L290 TraceCheckUtils]: 9: Hoare triple {155135#(<= ~counter~0 0)} assume true; {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,338 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155135#(<= ~counter~0 0)} {155135#(<= ~counter~0 0)} #94#return; {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,338 INFO L272 TraceCheckUtils]: 11: Hoare triple {155135#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,338 INFO L290 TraceCheckUtils]: 12: Hoare triple {155135#(<= ~counter~0 0)} ~cond := #in~cond; {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,339 INFO L290 TraceCheckUtils]: 13: Hoare triple {155135#(<= ~counter~0 0)} assume !(0 == ~cond); {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,339 INFO L290 TraceCheckUtils]: 14: Hoare triple {155135#(<= ~counter~0 0)} assume true; {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,339 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {155135#(<= ~counter~0 0)} {155135#(<= ~counter~0 0)} #96#return; {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,340 INFO L290 TraceCheckUtils]: 16: Hoare triple {155135#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {155135#(<= ~counter~0 0)} is VALID [2022-04-15 09:00:52,342 INFO L290 TraceCheckUtils]: 17: Hoare triple {155135#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155184#(<= ~counter~0 1)} is VALID [2022-04-15 09:00:52,342 INFO L290 TraceCheckUtils]: 18: Hoare triple {155184#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {155184#(<= ~counter~0 1)} is VALID [2022-04-15 09:00:52,342 INFO L290 TraceCheckUtils]: 19: Hoare triple {155184#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155184#(<= ~counter~0 1)} is VALID [2022-04-15 09:00:52,343 INFO L290 TraceCheckUtils]: 20: Hoare triple {155184#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155194#(<= ~counter~0 2)} is VALID [2022-04-15 09:00:52,343 INFO L290 TraceCheckUtils]: 21: Hoare triple {155194#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {155194#(<= ~counter~0 2)} is VALID [2022-04-15 09:00:52,344 INFO L290 TraceCheckUtils]: 22: Hoare triple {155194#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155194#(<= ~counter~0 2)} is VALID [2022-04-15 09:00:52,345 INFO L290 TraceCheckUtils]: 23: Hoare triple {155194#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,345 INFO L290 TraceCheckUtils]: 24: Hoare triple {155204#(<= ~counter~0 3)} assume !!(#t~post8 < 20);havoc #t~post8; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,345 INFO L272 TraceCheckUtils]: 25: Hoare triple {155204#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,346 INFO L290 TraceCheckUtils]: 26: Hoare triple {155204#(<= ~counter~0 3)} ~cond := #in~cond; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,346 INFO L290 TraceCheckUtils]: 27: Hoare triple {155204#(<= ~counter~0 3)} assume !(0 == ~cond); {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,346 INFO L290 TraceCheckUtils]: 28: Hoare triple {155204#(<= ~counter~0 3)} assume true; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,347 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {155204#(<= ~counter~0 3)} {155204#(<= ~counter~0 3)} #98#return; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,347 INFO L272 TraceCheckUtils]: 30: Hoare triple {155204#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,347 INFO L290 TraceCheckUtils]: 31: Hoare triple {155204#(<= ~counter~0 3)} ~cond := #in~cond; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,348 INFO L290 TraceCheckUtils]: 32: Hoare triple {155204#(<= ~counter~0 3)} assume !(0 == ~cond); {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,348 INFO L290 TraceCheckUtils]: 33: Hoare triple {155204#(<= ~counter~0 3)} assume true; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,348 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {155204#(<= ~counter~0 3)} {155204#(<= ~counter~0 3)} #100#return; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,349 INFO L272 TraceCheckUtils]: 35: Hoare triple {155204#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,349 INFO L290 TraceCheckUtils]: 36: Hoare triple {155204#(<= ~counter~0 3)} ~cond := #in~cond; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,349 INFO L290 TraceCheckUtils]: 37: Hoare triple {155204#(<= ~counter~0 3)} assume !(0 == ~cond); {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,350 INFO L290 TraceCheckUtils]: 38: Hoare triple {155204#(<= ~counter~0 3)} assume true; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,350 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {155204#(<= ~counter~0 3)} {155204#(<= ~counter~0 3)} #102#return; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,351 INFO L272 TraceCheckUtils]: 40: Hoare triple {155204#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,351 INFO L290 TraceCheckUtils]: 41: Hoare triple {155204#(<= ~counter~0 3)} ~cond := #in~cond; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,351 INFO L290 TraceCheckUtils]: 42: Hoare triple {155204#(<= ~counter~0 3)} assume !(0 == ~cond); {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,351 INFO L290 TraceCheckUtils]: 43: Hoare triple {155204#(<= ~counter~0 3)} assume true; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,352 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {155204#(<= ~counter~0 3)} {155204#(<= ~counter~0 3)} #104#return; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,352 INFO L290 TraceCheckUtils]: 45: Hoare triple {155204#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,352 INFO L290 TraceCheckUtils]: 46: Hoare triple {155204#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155204#(<= ~counter~0 3)} is VALID [2022-04-15 09:00:52,353 INFO L290 TraceCheckUtils]: 47: Hoare triple {155204#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155277#(<= ~counter~0 4)} is VALID [2022-04-15 09:00:52,354 INFO L290 TraceCheckUtils]: 48: Hoare triple {155277#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {155277#(<= ~counter~0 4)} is VALID [2022-04-15 09:00:52,354 INFO L290 TraceCheckUtils]: 49: Hoare triple {155277#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {155277#(<= ~counter~0 4)} is VALID [2022-04-15 09:00:52,354 INFO L290 TraceCheckUtils]: 50: Hoare triple {155277#(<= ~counter~0 4)} ~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; {155277#(<= ~counter~0 4)} is VALID [2022-04-15 09:00:52,355 INFO L290 TraceCheckUtils]: 51: Hoare triple {155277#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155290#(<= ~counter~0 5)} is VALID [2022-04-15 09:00:52,355 INFO L290 TraceCheckUtils]: 52: Hoare triple {155290#(<= ~counter~0 5)} assume !!(#t~post6 < 20);havoc #t~post6; {155290#(<= ~counter~0 5)} is VALID [2022-04-15 09:00:52,355 INFO L290 TraceCheckUtils]: 53: Hoare triple {155290#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155290#(<= ~counter~0 5)} is VALID [2022-04-15 09:00:52,356 INFO L290 TraceCheckUtils]: 54: Hoare triple {155290#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155300#(<= ~counter~0 6)} is VALID [2022-04-15 09:00:52,357 INFO L290 TraceCheckUtils]: 55: Hoare triple {155300#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {155300#(<= ~counter~0 6)} is VALID [2022-04-15 09:00:52,357 INFO L290 TraceCheckUtils]: 56: Hoare triple {155300#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155300#(<= ~counter~0 6)} is VALID [2022-04-15 09:00:52,358 INFO L290 TraceCheckUtils]: 57: Hoare triple {155300#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,358 INFO L290 TraceCheckUtils]: 58: Hoare triple {155310#(<= ~counter~0 7)} assume !!(#t~post8 < 20);havoc #t~post8; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,359 INFO L272 TraceCheckUtils]: 59: Hoare triple {155310#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,359 INFO L290 TraceCheckUtils]: 60: Hoare triple {155310#(<= ~counter~0 7)} ~cond := #in~cond; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,359 INFO L290 TraceCheckUtils]: 61: Hoare triple {155310#(<= ~counter~0 7)} assume !(0 == ~cond); {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,359 INFO L290 TraceCheckUtils]: 62: Hoare triple {155310#(<= ~counter~0 7)} assume true; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,360 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {155310#(<= ~counter~0 7)} {155310#(<= ~counter~0 7)} #98#return; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,360 INFO L272 TraceCheckUtils]: 64: Hoare triple {155310#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,361 INFO L290 TraceCheckUtils]: 65: Hoare triple {155310#(<= ~counter~0 7)} ~cond := #in~cond; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,361 INFO L290 TraceCheckUtils]: 66: Hoare triple {155310#(<= ~counter~0 7)} assume !(0 == ~cond); {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,361 INFO L290 TraceCheckUtils]: 67: Hoare triple {155310#(<= ~counter~0 7)} assume true; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,362 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {155310#(<= ~counter~0 7)} {155310#(<= ~counter~0 7)} #100#return; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,362 INFO L272 TraceCheckUtils]: 69: Hoare triple {155310#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,362 INFO L290 TraceCheckUtils]: 70: Hoare triple {155310#(<= ~counter~0 7)} ~cond := #in~cond; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,363 INFO L290 TraceCheckUtils]: 71: Hoare triple {155310#(<= ~counter~0 7)} assume !(0 == ~cond); {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,363 INFO L290 TraceCheckUtils]: 72: Hoare triple {155310#(<= ~counter~0 7)} assume true; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,363 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {155310#(<= ~counter~0 7)} {155310#(<= ~counter~0 7)} #102#return; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,364 INFO L272 TraceCheckUtils]: 74: Hoare triple {155310#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,364 INFO L290 TraceCheckUtils]: 75: Hoare triple {155310#(<= ~counter~0 7)} ~cond := #in~cond; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,364 INFO L290 TraceCheckUtils]: 76: Hoare triple {155310#(<= ~counter~0 7)} assume !(0 == ~cond); {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,364 INFO L290 TraceCheckUtils]: 77: Hoare triple {155310#(<= ~counter~0 7)} assume true; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,365 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {155310#(<= ~counter~0 7)} {155310#(<= ~counter~0 7)} #104#return; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,365 INFO L290 TraceCheckUtils]: 79: Hoare triple {155310#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,365 INFO L290 TraceCheckUtils]: 80: Hoare triple {155310#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155310#(<= ~counter~0 7)} is VALID [2022-04-15 09:00:52,367 INFO L290 TraceCheckUtils]: 81: Hoare triple {155310#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155383#(<= ~counter~0 8)} is VALID [2022-04-15 09:00:52,367 INFO L290 TraceCheckUtils]: 82: Hoare triple {155383#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {155383#(<= ~counter~0 8)} is VALID [2022-04-15 09:00:52,367 INFO L290 TraceCheckUtils]: 83: Hoare triple {155383#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {155383#(<= ~counter~0 8)} is VALID [2022-04-15 09:00:52,368 INFO L290 TraceCheckUtils]: 84: Hoare triple {155383#(<= ~counter~0 8)} ~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; {155383#(<= ~counter~0 8)} is VALID [2022-04-15 09:00:52,369 INFO L290 TraceCheckUtils]: 85: Hoare triple {155383#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155396#(<= ~counter~0 9)} is VALID [2022-04-15 09:00:52,369 INFO L290 TraceCheckUtils]: 86: Hoare triple {155396#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {155396#(<= ~counter~0 9)} is VALID [2022-04-15 09:00:52,369 INFO L290 TraceCheckUtils]: 87: Hoare triple {155396#(<= ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155396#(<= ~counter~0 9)} is VALID [2022-04-15 09:00:52,370 INFO L290 TraceCheckUtils]: 88: Hoare triple {155396#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155406#(<= ~counter~0 10)} is VALID [2022-04-15 09:00:52,371 INFO L290 TraceCheckUtils]: 89: Hoare triple {155406#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {155406#(<= ~counter~0 10)} is VALID [2022-04-15 09:00:52,371 INFO L290 TraceCheckUtils]: 90: Hoare triple {155406#(<= ~counter~0 10)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155406#(<= ~counter~0 10)} is VALID [2022-04-15 09:00:52,371 INFO L290 TraceCheckUtils]: 91: Hoare triple {155406#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155416#(<= |main_#t~post8| 10)} is VALID [2022-04-15 09:00:52,372 INFO L290 TraceCheckUtils]: 92: Hoare triple {155416#(<= |main_#t~post8| 10)} assume !(#t~post8 < 20);havoc #t~post8; {155128#false} is VALID [2022-04-15 09:00:52,372 INFO L290 TraceCheckUtils]: 93: Hoare triple {155128#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155128#false} is VALID [2022-04-15 09:00:52,372 INFO L290 TraceCheckUtils]: 94: Hoare triple {155128#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155128#false} is VALID [2022-04-15 09:00:52,372 INFO L290 TraceCheckUtils]: 95: Hoare triple {155128#false} assume !(#t~post7 < 20);havoc #t~post7; {155128#false} is VALID [2022-04-15 09:00:52,372 INFO L290 TraceCheckUtils]: 96: Hoare triple {155128#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; {155128#false} is VALID [2022-04-15 09:00:52,372 INFO L290 TraceCheckUtils]: 97: Hoare triple {155128#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155128#false} is VALID [2022-04-15 09:00:52,372 INFO L290 TraceCheckUtils]: 98: Hoare triple {155128#false} assume !(#t~post6 < 20);havoc #t~post6; {155128#false} is VALID [2022-04-15 09:00:52,372 INFO L272 TraceCheckUtils]: 99: Hoare triple {155128#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)); {155128#false} is VALID [2022-04-15 09:00:52,372 INFO L290 TraceCheckUtils]: 100: Hoare triple {155128#false} ~cond := #in~cond; {155128#false} is VALID [2022-04-15 09:00:52,372 INFO L290 TraceCheckUtils]: 101: Hoare triple {155128#false} assume 0 == ~cond; {155128#false} is VALID [2022-04-15 09:00:52,372 INFO L290 TraceCheckUtils]: 102: Hoare triple {155128#false} assume !false; {155128#false} is VALID [2022-04-15 09:00:52,373 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 36 proven. 116 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-15 09:00:52,373 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:00:52,859 INFO L290 TraceCheckUtils]: 102: Hoare triple {155128#false} assume !false; {155128#false} is VALID [2022-04-15 09:00:52,859 INFO L290 TraceCheckUtils]: 101: Hoare triple {155128#false} assume 0 == ~cond; {155128#false} is VALID [2022-04-15 09:00:52,859 INFO L290 TraceCheckUtils]: 100: Hoare triple {155128#false} ~cond := #in~cond; {155128#false} is VALID [2022-04-15 09:00:52,859 INFO L272 TraceCheckUtils]: 99: Hoare triple {155128#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)); {155128#false} is VALID [2022-04-15 09:00:52,859 INFO L290 TraceCheckUtils]: 98: Hoare triple {155128#false} assume !(#t~post6 < 20);havoc #t~post6; {155128#false} is VALID [2022-04-15 09:00:52,859 INFO L290 TraceCheckUtils]: 97: Hoare triple {155128#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155128#false} is VALID [2022-04-15 09:00:52,859 INFO L290 TraceCheckUtils]: 96: Hoare triple {155128#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; {155128#false} is VALID [2022-04-15 09:00:52,859 INFO L290 TraceCheckUtils]: 95: Hoare triple {155128#false} assume !(#t~post7 < 20);havoc #t~post7; {155128#false} is VALID [2022-04-15 09:00:52,859 INFO L290 TraceCheckUtils]: 94: Hoare triple {155128#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155128#false} is VALID [2022-04-15 09:00:52,859 INFO L290 TraceCheckUtils]: 93: Hoare triple {155128#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155128#false} is VALID [2022-04-15 09:00:52,860 INFO L290 TraceCheckUtils]: 92: Hoare triple {155480#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {155128#false} is VALID [2022-04-15 09:00:52,860 INFO L290 TraceCheckUtils]: 91: Hoare triple {155484#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155480#(< |main_#t~post8| 20)} is VALID [2022-04-15 09:00:52,860 INFO L290 TraceCheckUtils]: 90: Hoare triple {155484#(< ~counter~0 20)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155484#(< ~counter~0 20)} is VALID [2022-04-15 09:00:52,861 INFO L290 TraceCheckUtils]: 89: Hoare triple {155484#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {155484#(< ~counter~0 20)} is VALID [2022-04-15 09:00:52,863 INFO L290 TraceCheckUtils]: 88: Hoare triple {155494#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155484#(< ~counter~0 20)} is VALID [2022-04-15 09:00:52,863 INFO L290 TraceCheckUtils]: 87: Hoare triple {155494#(< ~counter~0 19)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155494#(< ~counter~0 19)} is VALID [2022-04-15 09:00:52,864 INFO L290 TraceCheckUtils]: 86: Hoare triple {155494#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {155494#(< ~counter~0 19)} is VALID [2022-04-15 09:00:52,865 INFO L290 TraceCheckUtils]: 85: Hoare triple {155504#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155494#(< ~counter~0 19)} is VALID [2022-04-15 09:00:52,865 INFO L290 TraceCheckUtils]: 84: Hoare triple {155504#(< ~counter~0 18)} ~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; {155504#(< ~counter~0 18)} is VALID [2022-04-15 09:00:52,865 INFO L290 TraceCheckUtils]: 83: Hoare triple {155504#(< ~counter~0 18)} assume !(~c~0 >= ~b~0); {155504#(< ~counter~0 18)} is VALID [2022-04-15 09:00:52,866 INFO L290 TraceCheckUtils]: 82: Hoare triple {155504#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {155504#(< ~counter~0 18)} is VALID [2022-04-15 09:00:52,866 INFO L290 TraceCheckUtils]: 81: Hoare triple {155517#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155504#(< ~counter~0 18)} is VALID [2022-04-15 09:00:52,867 INFO L290 TraceCheckUtils]: 80: Hoare triple {155517#(< ~counter~0 17)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155517#(< ~counter~0 17)} is VALID [2022-04-15 09:00:52,867 INFO L290 TraceCheckUtils]: 79: Hoare triple {155517#(< ~counter~0 17)} assume !(~c~0 >= 2 * ~v~0); {155517#(< ~counter~0 17)} is VALID [2022-04-15 09:00:52,867 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {155127#true} {155517#(< ~counter~0 17)} #104#return; {155517#(< ~counter~0 17)} is VALID [2022-04-15 09:00:52,868 INFO L290 TraceCheckUtils]: 77: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-15 09:00:52,868 INFO L290 TraceCheckUtils]: 76: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-15 09:00:52,868 INFO L290 TraceCheckUtils]: 75: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-15 09:00:52,868 INFO L272 TraceCheckUtils]: 74: Hoare triple {155517#(< ~counter~0 17)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155127#true} is VALID [2022-04-15 09:00:52,868 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {155127#true} {155517#(< ~counter~0 17)} #102#return; {155517#(< ~counter~0 17)} is VALID [2022-04-15 09:00:52,868 INFO L290 TraceCheckUtils]: 72: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-15 09:00:52,868 INFO L290 TraceCheckUtils]: 71: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-15 09:00:52,868 INFO L290 TraceCheckUtils]: 70: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-15 09:00:52,869 INFO L272 TraceCheckUtils]: 69: Hoare triple {155517#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155127#true} is VALID [2022-04-15 09:00:52,869 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {155127#true} {155517#(< ~counter~0 17)} #100#return; {155517#(< ~counter~0 17)} is VALID [2022-04-15 09:00:52,869 INFO L290 TraceCheckUtils]: 67: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-15 09:00:52,869 INFO L290 TraceCheckUtils]: 66: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-15 09:00:52,869 INFO L290 TraceCheckUtils]: 65: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-15 09:00:52,869 INFO L272 TraceCheckUtils]: 64: Hoare triple {155517#(< ~counter~0 17)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155127#true} is VALID [2022-04-15 09:00:52,870 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {155127#true} {155517#(< ~counter~0 17)} #98#return; {155517#(< ~counter~0 17)} is VALID [2022-04-15 09:00:52,870 INFO L290 TraceCheckUtils]: 62: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-15 09:00:52,870 INFO L290 TraceCheckUtils]: 61: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-15 09:00:52,870 INFO L290 TraceCheckUtils]: 60: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-15 09:00:52,870 INFO L272 TraceCheckUtils]: 59: Hoare triple {155517#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155127#true} is VALID [2022-04-15 09:00:52,870 INFO L290 TraceCheckUtils]: 58: Hoare triple {155517#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {155517#(< ~counter~0 17)} is VALID [2022-04-15 09:00:52,872 INFO L290 TraceCheckUtils]: 57: Hoare triple {155590#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155517#(< ~counter~0 17)} is VALID [2022-04-15 09:00:52,872 INFO L290 TraceCheckUtils]: 56: Hoare triple {155590#(< ~counter~0 16)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155590#(< ~counter~0 16)} is VALID [2022-04-15 09:00:52,872 INFO L290 TraceCheckUtils]: 55: Hoare triple {155590#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {155590#(< ~counter~0 16)} is VALID [2022-04-15 09:00:52,873 INFO L290 TraceCheckUtils]: 54: Hoare triple {155600#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155590#(< ~counter~0 16)} is VALID [2022-04-15 09:00:52,873 INFO L290 TraceCheckUtils]: 53: Hoare triple {155600#(< ~counter~0 15)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155600#(< ~counter~0 15)} is VALID [2022-04-15 09:00:52,874 INFO L290 TraceCheckUtils]: 52: Hoare triple {155600#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {155600#(< ~counter~0 15)} is VALID [2022-04-15 09:00:52,875 INFO L290 TraceCheckUtils]: 51: Hoare triple {155610#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155600#(< ~counter~0 15)} is VALID [2022-04-15 09:00:52,875 INFO L290 TraceCheckUtils]: 50: Hoare triple {155610#(< ~counter~0 14)} ~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; {155610#(< ~counter~0 14)} is VALID [2022-04-15 09:00:52,875 INFO L290 TraceCheckUtils]: 49: Hoare triple {155610#(< ~counter~0 14)} assume !(~c~0 >= ~b~0); {155610#(< ~counter~0 14)} is VALID [2022-04-15 09:00:52,875 INFO L290 TraceCheckUtils]: 48: Hoare triple {155610#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {155610#(< ~counter~0 14)} is VALID [2022-04-15 09:00:52,876 INFO L290 TraceCheckUtils]: 47: Hoare triple {155623#(< ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155610#(< ~counter~0 14)} is VALID [2022-04-15 09:00:52,877 INFO L290 TraceCheckUtils]: 46: Hoare triple {155623#(< ~counter~0 13)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155623#(< ~counter~0 13)} is VALID [2022-04-15 09:00:52,877 INFO L290 TraceCheckUtils]: 45: Hoare triple {155623#(< ~counter~0 13)} assume !(~c~0 >= 2 * ~v~0); {155623#(< ~counter~0 13)} is VALID [2022-04-15 09:00:52,877 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {155127#true} {155623#(< ~counter~0 13)} #104#return; {155623#(< ~counter~0 13)} is VALID [2022-04-15 09:00:52,877 INFO L290 TraceCheckUtils]: 43: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-15 09:00:52,877 INFO L290 TraceCheckUtils]: 42: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-15 09:00:52,878 INFO L290 TraceCheckUtils]: 41: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-15 09:00:52,878 INFO L272 TraceCheckUtils]: 40: Hoare triple {155623#(< ~counter~0 13)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155127#true} is VALID [2022-04-15 09:00:52,878 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {155127#true} {155623#(< ~counter~0 13)} #102#return; {155623#(< ~counter~0 13)} is VALID [2022-04-15 09:00:52,878 INFO L290 TraceCheckUtils]: 38: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-15 09:00:52,878 INFO L290 TraceCheckUtils]: 37: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-15 09:00:52,878 INFO L290 TraceCheckUtils]: 36: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-15 09:00:52,878 INFO L272 TraceCheckUtils]: 35: Hoare triple {155623#(< ~counter~0 13)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155127#true} is VALID [2022-04-15 09:00:52,879 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {155127#true} {155623#(< ~counter~0 13)} #100#return; {155623#(< ~counter~0 13)} is VALID [2022-04-15 09:00:52,879 INFO L290 TraceCheckUtils]: 33: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-15 09:00:52,879 INFO L290 TraceCheckUtils]: 32: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-15 09:00:52,879 INFO L290 TraceCheckUtils]: 31: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-15 09:00:52,879 INFO L272 TraceCheckUtils]: 30: Hoare triple {155623#(< ~counter~0 13)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155127#true} is VALID [2022-04-15 09:00:52,880 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {155127#true} {155623#(< ~counter~0 13)} #98#return; {155623#(< ~counter~0 13)} is VALID [2022-04-15 09:00:52,880 INFO L290 TraceCheckUtils]: 28: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-15 09:00:52,880 INFO L290 TraceCheckUtils]: 27: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-15 09:00:52,880 INFO L290 TraceCheckUtils]: 26: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-15 09:00:52,880 INFO L272 TraceCheckUtils]: 25: Hoare triple {155623#(< ~counter~0 13)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155127#true} is VALID [2022-04-15 09:00:52,880 INFO L290 TraceCheckUtils]: 24: Hoare triple {155623#(< ~counter~0 13)} assume !!(#t~post8 < 20);havoc #t~post8; {155623#(< ~counter~0 13)} is VALID [2022-04-15 09:00:52,881 INFO L290 TraceCheckUtils]: 23: Hoare triple {155696#(< ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155623#(< ~counter~0 13)} is VALID [2022-04-15 09:00:52,881 INFO L290 TraceCheckUtils]: 22: Hoare triple {155696#(< ~counter~0 12)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155696#(< ~counter~0 12)} is VALID [2022-04-15 09:00:52,881 INFO L290 TraceCheckUtils]: 21: Hoare triple {155696#(< ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {155696#(< ~counter~0 12)} is VALID [2022-04-15 09:00:52,882 INFO L290 TraceCheckUtils]: 20: Hoare triple {155406#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155696#(< ~counter~0 12)} is VALID [2022-04-15 09:00:52,883 INFO L290 TraceCheckUtils]: 19: Hoare triple {155406#(<= ~counter~0 10)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155406#(<= ~counter~0 10)} is VALID [2022-04-15 09:00:52,883 INFO L290 TraceCheckUtils]: 18: Hoare triple {155406#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {155406#(<= ~counter~0 10)} is VALID [2022-04-15 09:00:52,884 INFO L290 TraceCheckUtils]: 17: Hoare triple {155396#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155406#(<= ~counter~0 10)} is VALID [2022-04-15 09:00:52,884 INFO L290 TraceCheckUtils]: 16: Hoare triple {155396#(<= ~counter~0 9)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {155396#(<= ~counter~0 9)} is VALID [2022-04-15 09:00:52,884 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {155127#true} {155396#(<= ~counter~0 9)} #96#return; {155396#(<= ~counter~0 9)} is VALID [2022-04-15 09:00:52,885 INFO L290 TraceCheckUtils]: 14: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-15 09:00:52,885 INFO L290 TraceCheckUtils]: 13: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-15 09:00:52,885 INFO L290 TraceCheckUtils]: 12: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-15 09:00:52,885 INFO L272 TraceCheckUtils]: 11: Hoare triple {155396#(<= ~counter~0 9)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {155127#true} is VALID [2022-04-15 09:00:52,885 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155127#true} {155396#(<= ~counter~0 9)} #94#return; {155396#(<= ~counter~0 9)} is VALID [2022-04-15 09:00:52,885 INFO L290 TraceCheckUtils]: 9: Hoare triple {155127#true} assume true; {155127#true} is VALID [2022-04-15 09:00:52,885 INFO L290 TraceCheckUtils]: 8: Hoare triple {155127#true} assume !(0 == ~cond); {155127#true} is VALID [2022-04-15 09:00:52,885 INFO L290 TraceCheckUtils]: 7: Hoare triple {155127#true} ~cond := #in~cond; {155127#true} is VALID [2022-04-15 09:00:52,885 INFO L272 TraceCheckUtils]: 6: Hoare triple {155396#(<= ~counter~0 9)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {155127#true} is VALID [2022-04-15 09:00:52,886 INFO L290 TraceCheckUtils]: 5: Hoare triple {155396#(<= ~counter~0 9)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {155396#(<= ~counter~0 9)} is VALID [2022-04-15 09:00:52,886 INFO L272 TraceCheckUtils]: 4: Hoare triple {155396#(<= ~counter~0 9)} call #t~ret9 := main(); {155396#(<= ~counter~0 9)} is VALID [2022-04-15 09:00:52,886 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155396#(<= ~counter~0 9)} {155127#true} #108#return; {155396#(<= ~counter~0 9)} is VALID [2022-04-15 09:00:52,886 INFO L290 TraceCheckUtils]: 2: Hoare triple {155396#(<= ~counter~0 9)} assume true; {155396#(<= ~counter~0 9)} is VALID [2022-04-15 09:00:52,887 INFO L290 TraceCheckUtils]: 1: Hoare triple {155127#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);~counter~0 := 0; {155396#(<= ~counter~0 9)} is VALID [2022-04-15 09:00:52,887 INFO L272 TraceCheckUtils]: 0: Hoare triple {155127#true} call ULTIMATE.init(); {155127#true} is VALID [2022-04-15 09:00:52,887 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 36 proven. 52 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-15 09:00:52,887 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:00:52,887 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1763750486] [2022-04-15 09:00:52,887 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:00:52,888 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1528831053] [2022-04-15 09:00:52,888 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1528831053] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:00:52,888 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:00:52,888 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 24 [2022-04-15 09:00:52,888 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:00:52,888 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1093337137] [2022-04-15 09:00:52,888 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1093337137] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:00:52,888 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:00:52,888 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-15 09:00:52,888 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [865027171] [2022-04-15 09:00:52,888 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:00:52,889 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 103 [2022-04-15 09:00:52,889 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:00:52,889 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 09:00:52,967 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:00:52,967 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 09:00:52,967 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:00:52,967 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 09:00:52,968 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-15 09:00:52,968 INFO L87 Difference]: Start difference. First operand 1765 states and 2340 transitions. Second operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 09:00:58,866 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:00:58,866 INFO L93 Difference]: Finished difference Result 2634 states and 3640 transitions. [2022-04-15 09:00:58,866 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-15 09:00:58,866 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 103 [2022-04-15 09:00:58,866 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:00:58,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 09:00:58,868 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 285 transitions. [2022-04-15 09:00:58,868 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 09:00:58,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 285 transitions. [2022-04-15 09:00:58,870 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 285 transitions. [2022-04-15 09:00:59,158 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 285 edges. 285 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:00:59,324 INFO L225 Difference]: With dead ends: 2634 [2022-04-15 09:00:59,324 INFO L226 Difference]: Without dead ends: 1870 [2022-04-15 09:00:59,326 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 182 SyntacticMatches, 1 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 70 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=404, Invalid=588, Unknown=0, NotChecked=0, Total=992 [2022-04-15 09:00:59,326 INFO L913 BasicCegarLoop]: 76 mSDtfsCounter, 232 mSDsluCounter, 256 mSDsCounter, 0 mSdLazyCounter, 156 mSolverCounterSat, 132 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 232 SdHoareTripleChecker+Valid, 332 SdHoareTripleChecker+Invalid, 288 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 132 IncrementalHoareTripleChecker+Valid, 156 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 09:00:59,327 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [232 Valid, 332 Invalid, 288 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [132 Valid, 156 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 09:00:59,327 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1870 states. [2022-04-15 09:01:03,834 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1870 to 1825. [2022-04-15 09:01:03,835 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:01:03,837 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-15 09:01:03,838 INFO L74 IsIncluded]: Start isIncluded. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-15 09:01:03,839 INFO L87 Difference]: Start difference. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-15 09:01:03,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:01:03,939 INFO L93 Difference]: Finished difference Result 1870 states and 2455 transitions. [2022-04-15 09:01:03,939 INFO L276 IsEmpty]: Start isEmpty. Operand 1870 states and 2455 transitions. [2022-04-15 09:01:03,941 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:01:03,941 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:01:03,943 INFO L74 IsIncluded]: Start isIncluded. First operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) Second operand 1870 states. [2022-04-15 09:01:03,944 INFO L87 Difference]: Start difference. First operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) Second operand 1870 states. [2022-04-15 09:01:04,051 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:01:04,052 INFO L93 Difference]: Finished difference Result 1870 states and 2455 transitions. [2022-04-15 09:01:04,052 INFO L276 IsEmpty]: Start isEmpty. Operand 1870 states and 2455 transitions. [2022-04-15 09:01:04,054 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:01:04,054 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:01:04,054 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:01:04,054 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:01:04,056 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-15 09:01:04,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1825 states to 1825 states and 2413 transitions. [2022-04-15 09:01:04,202 INFO L78 Accepts]: Start accepts. Automaton has 1825 states and 2413 transitions. Word has length 103 [2022-04-15 09:01:04,202 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:01:04,203 INFO L478 AbstractCegarLoop]: Abstraction has 1825 states and 2413 transitions. [2022-04-15 09:01:04,203 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 09:01:04,203 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1825 states and 2413 transitions. [2022-04-15 09:01:11,303 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2413 edges. 2413 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:01:11,303 INFO L276 IsEmpty]: Start isEmpty. Operand 1825 states and 2413 transitions. [2022-04-15 09:01:11,304 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-15 09:01:11,304 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:01:11,304 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 6, 5, 5, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:01:11,320 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Forceful destruction successful, exit code 0 [2022-04-15 09:01:11,504 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 39 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable38 [2022-04-15 09:01:11,505 INFO L403 AbstractCegarLoop]: === Iteration 40 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:01:11,505 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:01:11,505 INFO L85 PathProgramCache]: Analyzing trace with hash -1865093808, now seen corresponding path program 7 times [2022-04-15 09:01:11,505 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:01:11,505 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2007236269] [2022-04-15 09:01:11,505 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:01:11,505 INFO L85 PathProgramCache]: Analyzing trace with hash -1865093808, now seen corresponding path program 8 times [2022-04-15 09:01:11,505 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:01:11,506 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [630348762] [2022-04-15 09:01:11,506 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:01:11,506 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:01:11,517 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:01:11,517 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [38011402] [2022-04-15 09:01:11,517 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:01:11,517 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:01:11,517 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:01:11,518 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:01:11,519 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Waiting until timeout for monitored process [2022-04-15 09:01:11,578 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:01:11,578 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:01:11,579 INFO L263 TraceCheckSpWp]: Trace formula consists of 330 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-15 09:01:11,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:01:11,601 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:01:12,060 INFO L272 TraceCheckUtils]: 0: Hoare triple {168442#true} call ULTIMATE.init(); {168442#true} is VALID [2022-04-15 09:01:12,061 INFO L290 TraceCheckUtils]: 1: Hoare triple {168442#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);~counter~0 := 0; {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,061 INFO L290 TraceCheckUtils]: 2: Hoare triple {168450#(<= ~counter~0 0)} assume true; {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,061 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168450#(<= ~counter~0 0)} {168442#true} #108#return; {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,062 INFO L272 TraceCheckUtils]: 4: Hoare triple {168450#(<= ~counter~0 0)} call #t~ret9 := main(); {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,062 INFO L290 TraceCheckUtils]: 5: Hoare triple {168450#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,062 INFO L272 TraceCheckUtils]: 6: Hoare triple {168450#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,063 INFO L290 TraceCheckUtils]: 7: Hoare triple {168450#(<= ~counter~0 0)} ~cond := #in~cond; {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,063 INFO L290 TraceCheckUtils]: 8: Hoare triple {168450#(<= ~counter~0 0)} assume !(0 == ~cond); {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,063 INFO L290 TraceCheckUtils]: 9: Hoare triple {168450#(<= ~counter~0 0)} assume true; {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,063 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168450#(<= ~counter~0 0)} {168450#(<= ~counter~0 0)} #94#return; {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,064 INFO L272 TraceCheckUtils]: 11: Hoare triple {168450#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,064 INFO L290 TraceCheckUtils]: 12: Hoare triple {168450#(<= ~counter~0 0)} ~cond := #in~cond; {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,064 INFO L290 TraceCheckUtils]: 13: Hoare triple {168450#(<= ~counter~0 0)} assume !(0 == ~cond); {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,065 INFO L290 TraceCheckUtils]: 14: Hoare triple {168450#(<= ~counter~0 0)} assume true; {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,065 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {168450#(<= ~counter~0 0)} {168450#(<= ~counter~0 0)} #96#return; {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,065 INFO L290 TraceCheckUtils]: 16: Hoare triple {168450#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {168450#(<= ~counter~0 0)} is VALID [2022-04-15 09:01:12,068 INFO L290 TraceCheckUtils]: 17: Hoare triple {168450#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168499#(<= ~counter~0 1)} is VALID [2022-04-15 09:01:12,068 INFO L290 TraceCheckUtils]: 18: Hoare triple {168499#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {168499#(<= ~counter~0 1)} is VALID [2022-04-15 09:01:12,068 INFO L290 TraceCheckUtils]: 19: Hoare triple {168499#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168499#(<= ~counter~0 1)} is VALID [2022-04-15 09:01:12,069 INFO L290 TraceCheckUtils]: 20: Hoare triple {168499#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168509#(<= ~counter~0 2)} is VALID [2022-04-15 09:01:12,069 INFO L290 TraceCheckUtils]: 21: Hoare triple {168509#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {168509#(<= ~counter~0 2)} is VALID [2022-04-15 09:01:12,070 INFO L290 TraceCheckUtils]: 22: Hoare triple {168509#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {168509#(<= ~counter~0 2)} is VALID [2022-04-15 09:01:12,070 INFO L290 TraceCheckUtils]: 23: Hoare triple {168509#(<= ~counter~0 2)} ~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; {168509#(<= ~counter~0 2)} is VALID [2022-04-15 09:01:12,071 INFO L290 TraceCheckUtils]: 24: Hoare triple {168509#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168522#(<= ~counter~0 3)} is VALID [2022-04-15 09:01:12,071 INFO L290 TraceCheckUtils]: 25: Hoare triple {168522#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {168522#(<= ~counter~0 3)} is VALID [2022-04-15 09:01:12,071 INFO L290 TraceCheckUtils]: 26: Hoare triple {168522#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168522#(<= ~counter~0 3)} is VALID [2022-04-15 09:01:12,072 INFO L290 TraceCheckUtils]: 27: Hoare triple {168522#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168532#(<= ~counter~0 4)} is VALID [2022-04-15 09:01:12,073 INFO L290 TraceCheckUtils]: 28: Hoare triple {168532#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {168532#(<= ~counter~0 4)} is VALID [2022-04-15 09:01:12,073 INFO L290 TraceCheckUtils]: 29: Hoare triple {168532#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168532#(<= ~counter~0 4)} is VALID [2022-04-15 09:01:12,074 INFO L290 TraceCheckUtils]: 30: Hoare triple {168532#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,074 INFO L290 TraceCheckUtils]: 31: Hoare triple {168542#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,075 INFO L272 TraceCheckUtils]: 32: Hoare triple {168542#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,075 INFO L290 TraceCheckUtils]: 33: Hoare triple {168542#(<= ~counter~0 5)} ~cond := #in~cond; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,075 INFO L290 TraceCheckUtils]: 34: Hoare triple {168542#(<= ~counter~0 5)} assume !(0 == ~cond); {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,075 INFO L290 TraceCheckUtils]: 35: Hoare triple {168542#(<= ~counter~0 5)} assume true; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,076 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {168542#(<= ~counter~0 5)} {168542#(<= ~counter~0 5)} #98#return; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,076 INFO L272 TraceCheckUtils]: 37: Hoare triple {168542#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,077 INFO L290 TraceCheckUtils]: 38: Hoare triple {168542#(<= ~counter~0 5)} ~cond := #in~cond; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,077 INFO L290 TraceCheckUtils]: 39: Hoare triple {168542#(<= ~counter~0 5)} assume !(0 == ~cond); {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,077 INFO L290 TraceCheckUtils]: 40: Hoare triple {168542#(<= ~counter~0 5)} assume true; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,078 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {168542#(<= ~counter~0 5)} {168542#(<= ~counter~0 5)} #100#return; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,078 INFO L272 TraceCheckUtils]: 42: Hoare triple {168542#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,078 INFO L290 TraceCheckUtils]: 43: Hoare triple {168542#(<= ~counter~0 5)} ~cond := #in~cond; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,079 INFO L290 TraceCheckUtils]: 44: Hoare triple {168542#(<= ~counter~0 5)} assume !(0 == ~cond); {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,079 INFO L290 TraceCheckUtils]: 45: Hoare triple {168542#(<= ~counter~0 5)} assume true; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,079 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {168542#(<= ~counter~0 5)} {168542#(<= ~counter~0 5)} #102#return; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,080 INFO L272 TraceCheckUtils]: 47: Hoare triple {168542#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,080 INFO L290 TraceCheckUtils]: 48: Hoare triple {168542#(<= ~counter~0 5)} ~cond := #in~cond; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,080 INFO L290 TraceCheckUtils]: 49: Hoare triple {168542#(<= ~counter~0 5)} assume !(0 == ~cond); {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,080 INFO L290 TraceCheckUtils]: 50: Hoare triple {168542#(<= ~counter~0 5)} assume true; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,081 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {168542#(<= ~counter~0 5)} {168542#(<= ~counter~0 5)} #104#return; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,081 INFO L290 TraceCheckUtils]: 52: Hoare triple {168542#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,081 INFO L290 TraceCheckUtils]: 53: Hoare triple {168542#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168542#(<= ~counter~0 5)} is VALID [2022-04-15 09:01:12,082 INFO L290 TraceCheckUtils]: 54: Hoare triple {168542#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168615#(<= ~counter~0 6)} is VALID [2022-04-15 09:01:12,083 INFO L290 TraceCheckUtils]: 55: Hoare triple {168615#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {168615#(<= ~counter~0 6)} is VALID [2022-04-15 09:01:12,083 INFO L290 TraceCheckUtils]: 56: Hoare triple {168615#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {168615#(<= ~counter~0 6)} is VALID [2022-04-15 09:01:12,083 INFO L290 TraceCheckUtils]: 57: Hoare triple {168615#(<= ~counter~0 6)} ~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; {168615#(<= ~counter~0 6)} is VALID [2022-04-15 09:01:12,084 INFO L290 TraceCheckUtils]: 58: Hoare triple {168615#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168628#(<= ~counter~0 7)} is VALID [2022-04-15 09:01:12,085 INFO L290 TraceCheckUtils]: 59: Hoare triple {168628#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {168628#(<= ~counter~0 7)} is VALID [2022-04-15 09:01:12,085 INFO L290 TraceCheckUtils]: 60: Hoare triple {168628#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168628#(<= ~counter~0 7)} is VALID [2022-04-15 09:01:12,086 INFO L290 TraceCheckUtils]: 61: Hoare triple {168628#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168638#(<= ~counter~0 8)} is VALID [2022-04-15 09:01:12,086 INFO L290 TraceCheckUtils]: 62: Hoare triple {168638#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {168638#(<= ~counter~0 8)} is VALID [2022-04-15 09:01:12,086 INFO L290 TraceCheckUtils]: 63: Hoare triple {168638#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168638#(<= ~counter~0 8)} is VALID [2022-04-15 09:01:12,087 INFO L290 TraceCheckUtils]: 64: Hoare triple {168638#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,087 INFO L290 TraceCheckUtils]: 65: Hoare triple {168648#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,088 INFO L272 TraceCheckUtils]: 66: Hoare triple {168648#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,088 INFO L290 TraceCheckUtils]: 67: Hoare triple {168648#(<= ~counter~0 9)} ~cond := #in~cond; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,088 INFO L290 TraceCheckUtils]: 68: Hoare triple {168648#(<= ~counter~0 9)} assume !(0 == ~cond); {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,089 INFO L290 TraceCheckUtils]: 69: Hoare triple {168648#(<= ~counter~0 9)} assume true; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,089 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {168648#(<= ~counter~0 9)} {168648#(<= ~counter~0 9)} #98#return; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,090 INFO L272 TraceCheckUtils]: 71: Hoare triple {168648#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,090 INFO L290 TraceCheckUtils]: 72: Hoare triple {168648#(<= ~counter~0 9)} ~cond := #in~cond; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,101 INFO L290 TraceCheckUtils]: 73: Hoare triple {168648#(<= ~counter~0 9)} assume !(0 == ~cond); {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,102 INFO L290 TraceCheckUtils]: 74: Hoare triple {168648#(<= ~counter~0 9)} assume true; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,103 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {168648#(<= ~counter~0 9)} {168648#(<= ~counter~0 9)} #100#return; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,104 INFO L272 TraceCheckUtils]: 76: Hoare triple {168648#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,104 INFO L290 TraceCheckUtils]: 77: Hoare triple {168648#(<= ~counter~0 9)} ~cond := #in~cond; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,104 INFO L290 TraceCheckUtils]: 78: Hoare triple {168648#(<= ~counter~0 9)} assume !(0 == ~cond); {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,104 INFO L290 TraceCheckUtils]: 79: Hoare triple {168648#(<= ~counter~0 9)} assume true; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,105 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {168648#(<= ~counter~0 9)} {168648#(<= ~counter~0 9)} #102#return; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,105 INFO L272 TraceCheckUtils]: 81: Hoare triple {168648#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,105 INFO L290 TraceCheckUtils]: 82: Hoare triple {168648#(<= ~counter~0 9)} ~cond := #in~cond; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,106 INFO L290 TraceCheckUtils]: 83: Hoare triple {168648#(<= ~counter~0 9)} assume !(0 == ~cond); {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,106 INFO L290 TraceCheckUtils]: 84: Hoare triple {168648#(<= ~counter~0 9)} assume true; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,106 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {168648#(<= ~counter~0 9)} {168648#(<= ~counter~0 9)} #104#return; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,107 INFO L290 TraceCheckUtils]: 86: Hoare triple {168648#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,107 INFO L290 TraceCheckUtils]: 87: Hoare triple {168648#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,109 INFO L290 TraceCheckUtils]: 88: Hoare triple {168648#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168721#(<= ~counter~0 10)} is VALID [2022-04-15 09:01:12,110 INFO L290 TraceCheckUtils]: 89: Hoare triple {168721#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {168721#(<= ~counter~0 10)} is VALID [2022-04-15 09:01:12,110 INFO L290 TraceCheckUtils]: 90: Hoare triple {168721#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {168721#(<= ~counter~0 10)} is VALID [2022-04-15 09:01:12,110 INFO L290 TraceCheckUtils]: 91: Hoare triple {168721#(<= ~counter~0 10)} ~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; {168721#(<= ~counter~0 10)} is VALID [2022-04-15 09:01:12,111 INFO L290 TraceCheckUtils]: 92: Hoare triple {168721#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168734#(<= ~counter~0 11)} is VALID [2022-04-15 09:01:12,111 INFO L290 TraceCheckUtils]: 93: Hoare triple {168734#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {168734#(<= ~counter~0 11)} is VALID [2022-04-15 09:01:12,112 INFO L290 TraceCheckUtils]: 94: Hoare triple {168734#(<= ~counter~0 11)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168734#(<= ~counter~0 11)} is VALID [2022-04-15 09:01:12,112 INFO L290 TraceCheckUtils]: 95: Hoare triple {168734#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168744#(<= |main_#t~post7| 11)} is VALID [2022-04-15 09:01:12,112 INFO L290 TraceCheckUtils]: 96: Hoare triple {168744#(<= |main_#t~post7| 11)} assume !(#t~post7 < 20);havoc #t~post7; {168443#false} is VALID [2022-04-15 09:01:12,112 INFO L290 TraceCheckUtils]: 97: Hoare triple {168443#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; {168443#false} is VALID [2022-04-15 09:01:12,112 INFO L290 TraceCheckUtils]: 98: Hoare triple {168443#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168443#false} is VALID [2022-04-15 09:01:12,112 INFO L290 TraceCheckUtils]: 99: Hoare triple {168443#false} assume !(#t~post6 < 20);havoc #t~post6; {168443#false} is VALID [2022-04-15 09:01:12,113 INFO L272 TraceCheckUtils]: 100: Hoare triple {168443#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)); {168443#false} is VALID [2022-04-15 09:01:12,113 INFO L290 TraceCheckUtils]: 101: Hoare triple {168443#false} ~cond := #in~cond; {168443#false} is VALID [2022-04-15 09:01:12,113 INFO L290 TraceCheckUtils]: 102: Hoare triple {168443#false} assume 0 == ~cond; {168443#false} is VALID [2022-04-15 09:01:12,113 INFO L290 TraceCheckUtils]: 103: Hoare triple {168443#false} assume !false; {168443#false} is VALID [2022-04-15 09:01:12,113 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 27 proven. 133 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-15 09:01:12,113 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:01:12,653 INFO L290 TraceCheckUtils]: 103: Hoare triple {168443#false} assume !false; {168443#false} is VALID [2022-04-15 09:01:12,654 INFO L290 TraceCheckUtils]: 102: Hoare triple {168443#false} assume 0 == ~cond; {168443#false} is VALID [2022-04-15 09:01:12,654 INFO L290 TraceCheckUtils]: 101: Hoare triple {168443#false} ~cond := #in~cond; {168443#false} is VALID [2022-04-15 09:01:12,654 INFO L272 TraceCheckUtils]: 100: Hoare triple {168443#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)); {168443#false} is VALID [2022-04-15 09:01:12,654 INFO L290 TraceCheckUtils]: 99: Hoare triple {168443#false} assume !(#t~post6 < 20);havoc #t~post6; {168443#false} is VALID [2022-04-15 09:01:12,654 INFO L290 TraceCheckUtils]: 98: Hoare triple {168443#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168443#false} is VALID [2022-04-15 09:01:12,654 INFO L290 TraceCheckUtils]: 97: Hoare triple {168443#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; {168443#false} is VALID [2022-04-15 09:01:12,654 INFO L290 TraceCheckUtils]: 96: Hoare triple {168790#(< |main_#t~post7| 20)} assume !(#t~post7 < 20);havoc #t~post7; {168443#false} is VALID [2022-04-15 09:01:12,655 INFO L290 TraceCheckUtils]: 95: Hoare triple {168794#(< ~counter~0 20)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168790#(< |main_#t~post7| 20)} is VALID [2022-04-15 09:01:12,655 INFO L290 TraceCheckUtils]: 94: Hoare triple {168794#(< ~counter~0 20)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168794#(< ~counter~0 20)} is VALID [2022-04-15 09:01:12,655 INFO L290 TraceCheckUtils]: 93: Hoare triple {168794#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {168794#(< ~counter~0 20)} is VALID [2022-04-15 09:01:12,658 INFO L290 TraceCheckUtils]: 92: Hoare triple {168804#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168794#(< ~counter~0 20)} is VALID [2022-04-15 09:01:12,658 INFO L290 TraceCheckUtils]: 91: Hoare triple {168804#(< ~counter~0 19)} ~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; {168804#(< ~counter~0 19)} is VALID [2022-04-15 09:01:12,658 INFO L290 TraceCheckUtils]: 90: Hoare triple {168804#(< ~counter~0 19)} assume !(~c~0 >= ~b~0); {168804#(< ~counter~0 19)} is VALID [2022-04-15 09:01:12,658 INFO L290 TraceCheckUtils]: 89: Hoare triple {168804#(< ~counter~0 19)} assume !!(#t~post7 < 20);havoc #t~post7; {168804#(< ~counter~0 19)} is VALID [2022-04-15 09:01:12,660 INFO L290 TraceCheckUtils]: 88: Hoare triple {168817#(< ~counter~0 18)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168804#(< ~counter~0 19)} is VALID [2022-04-15 09:01:12,660 INFO L290 TraceCheckUtils]: 87: Hoare triple {168817#(< ~counter~0 18)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168817#(< ~counter~0 18)} is VALID [2022-04-15 09:01:12,660 INFO L290 TraceCheckUtils]: 86: Hoare triple {168817#(< ~counter~0 18)} assume !(~c~0 >= 2 * ~v~0); {168817#(< ~counter~0 18)} is VALID [2022-04-15 09:01:12,661 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {168442#true} {168817#(< ~counter~0 18)} #104#return; {168817#(< ~counter~0 18)} is VALID [2022-04-15 09:01:12,661 INFO L290 TraceCheckUtils]: 84: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-15 09:01:12,661 INFO L290 TraceCheckUtils]: 83: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-15 09:01:12,661 INFO L290 TraceCheckUtils]: 82: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-15 09:01:12,661 INFO L272 TraceCheckUtils]: 81: Hoare triple {168817#(< ~counter~0 18)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168442#true} is VALID [2022-04-15 09:01:12,661 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {168442#true} {168817#(< ~counter~0 18)} #102#return; {168817#(< ~counter~0 18)} is VALID [2022-04-15 09:01:12,661 INFO L290 TraceCheckUtils]: 79: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-15 09:01:12,662 INFO L290 TraceCheckUtils]: 78: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-15 09:01:12,662 INFO L290 TraceCheckUtils]: 77: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-15 09:01:12,662 INFO L272 TraceCheckUtils]: 76: Hoare triple {168817#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168442#true} is VALID [2022-04-15 09:01:12,662 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {168442#true} {168817#(< ~counter~0 18)} #100#return; {168817#(< ~counter~0 18)} is VALID [2022-04-15 09:01:12,662 INFO L290 TraceCheckUtils]: 74: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-15 09:01:12,662 INFO L290 TraceCheckUtils]: 73: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-15 09:01:12,662 INFO L290 TraceCheckUtils]: 72: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-15 09:01:12,662 INFO L272 TraceCheckUtils]: 71: Hoare triple {168817#(< ~counter~0 18)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168442#true} is VALID [2022-04-15 09:01:12,663 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {168442#true} {168817#(< ~counter~0 18)} #98#return; {168817#(< ~counter~0 18)} is VALID [2022-04-15 09:01:12,663 INFO L290 TraceCheckUtils]: 69: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-15 09:01:12,663 INFO L290 TraceCheckUtils]: 68: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-15 09:01:12,663 INFO L290 TraceCheckUtils]: 67: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-15 09:01:12,663 INFO L272 TraceCheckUtils]: 66: Hoare triple {168817#(< ~counter~0 18)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168442#true} is VALID [2022-04-15 09:01:12,664 INFO L290 TraceCheckUtils]: 65: Hoare triple {168817#(< ~counter~0 18)} assume !!(#t~post8 < 20);havoc #t~post8; {168817#(< ~counter~0 18)} is VALID [2022-04-15 09:01:12,665 INFO L290 TraceCheckUtils]: 64: Hoare triple {168890#(< ~counter~0 17)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168817#(< ~counter~0 18)} is VALID [2022-04-15 09:01:12,665 INFO L290 TraceCheckUtils]: 63: Hoare triple {168890#(< ~counter~0 17)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168890#(< ~counter~0 17)} is VALID [2022-04-15 09:01:12,666 INFO L290 TraceCheckUtils]: 62: Hoare triple {168890#(< ~counter~0 17)} assume !!(#t~post7 < 20);havoc #t~post7; {168890#(< ~counter~0 17)} is VALID [2022-04-15 09:01:12,667 INFO L290 TraceCheckUtils]: 61: Hoare triple {168900#(< ~counter~0 16)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168890#(< ~counter~0 17)} is VALID [2022-04-15 09:01:12,667 INFO L290 TraceCheckUtils]: 60: Hoare triple {168900#(< ~counter~0 16)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168900#(< ~counter~0 16)} is VALID [2022-04-15 09:01:12,667 INFO L290 TraceCheckUtils]: 59: Hoare triple {168900#(< ~counter~0 16)} assume !!(#t~post6 < 20);havoc #t~post6; {168900#(< ~counter~0 16)} is VALID [2022-04-15 09:01:12,668 INFO L290 TraceCheckUtils]: 58: Hoare triple {168910#(< ~counter~0 15)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168900#(< ~counter~0 16)} is VALID [2022-04-15 09:01:12,669 INFO L290 TraceCheckUtils]: 57: Hoare triple {168910#(< ~counter~0 15)} ~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; {168910#(< ~counter~0 15)} is VALID [2022-04-15 09:01:12,669 INFO L290 TraceCheckUtils]: 56: Hoare triple {168910#(< ~counter~0 15)} assume !(~c~0 >= ~b~0); {168910#(< ~counter~0 15)} is VALID [2022-04-15 09:01:12,669 INFO L290 TraceCheckUtils]: 55: Hoare triple {168910#(< ~counter~0 15)} assume !!(#t~post7 < 20);havoc #t~post7; {168910#(< ~counter~0 15)} is VALID [2022-04-15 09:01:12,670 INFO L290 TraceCheckUtils]: 54: Hoare triple {168923#(< ~counter~0 14)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168910#(< ~counter~0 15)} is VALID [2022-04-15 09:01:12,671 INFO L290 TraceCheckUtils]: 53: Hoare triple {168923#(< ~counter~0 14)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168923#(< ~counter~0 14)} is VALID [2022-04-15 09:01:12,671 INFO L290 TraceCheckUtils]: 52: Hoare triple {168923#(< ~counter~0 14)} assume !(~c~0 >= 2 * ~v~0); {168923#(< ~counter~0 14)} is VALID [2022-04-15 09:01:12,671 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {168442#true} {168923#(< ~counter~0 14)} #104#return; {168923#(< ~counter~0 14)} is VALID [2022-04-15 09:01:12,671 INFO L290 TraceCheckUtils]: 50: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-15 09:01:12,671 INFO L290 TraceCheckUtils]: 49: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-15 09:01:12,672 INFO L290 TraceCheckUtils]: 48: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-15 09:01:12,672 INFO L272 TraceCheckUtils]: 47: Hoare triple {168923#(< ~counter~0 14)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168442#true} is VALID [2022-04-15 09:01:12,672 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {168442#true} {168923#(< ~counter~0 14)} #102#return; {168923#(< ~counter~0 14)} is VALID [2022-04-15 09:01:12,672 INFO L290 TraceCheckUtils]: 45: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-15 09:01:12,672 INFO L290 TraceCheckUtils]: 44: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-15 09:01:12,672 INFO L290 TraceCheckUtils]: 43: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-15 09:01:12,672 INFO L272 TraceCheckUtils]: 42: Hoare triple {168923#(< ~counter~0 14)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168442#true} is VALID [2022-04-15 09:01:12,673 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {168442#true} {168923#(< ~counter~0 14)} #100#return; {168923#(< ~counter~0 14)} is VALID [2022-04-15 09:01:12,673 INFO L290 TraceCheckUtils]: 40: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-15 09:01:12,673 INFO L290 TraceCheckUtils]: 39: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-15 09:01:12,673 INFO L290 TraceCheckUtils]: 38: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-15 09:01:12,673 INFO L272 TraceCheckUtils]: 37: Hoare triple {168923#(< ~counter~0 14)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168442#true} is VALID [2022-04-15 09:01:12,674 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {168442#true} {168923#(< ~counter~0 14)} #98#return; {168923#(< ~counter~0 14)} is VALID [2022-04-15 09:01:12,674 INFO L290 TraceCheckUtils]: 35: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-15 09:01:12,674 INFO L290 TraceCheckUtils]: 34: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-15 09:01:12,674 INFO L290 TraceCheckUtils]: 33: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-15 09:01:12,674 INFO L272 TraceCheckUtils]: 32: Hoare triple {168923#(< ~counter~0 14)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168442#true} is VALID [2022-04-15 09:01:12,674 INFO L290 TraceCheckUtils]: 31: Hoare triple {168923#(< ~counter~0 14)} assume !!(#t~post8 < 20);havoc #t~post8; {168923#(< ~counter~0 14)} is VALID [2022-04-15 09:01:12,675 INFO L290 TraceCheckUtils]: 30: Hoare triple {168996#(< ~counter~0 13)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168923#(< ~counter~0 14)} is VALID [2022-04-15 09:01:12,676 INFO L290 TraceCheckUtils]: 29: Hoare triple {168996#(< ~counter~0 13)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168996#(< ~counter~0 13)} is VALID [2022-04-15 09:01:12,676 INFO L290 TraceCheckUtils]: 28: Hoare triple {168996#(< ~counter~0 13)} assume !!(#t~post7 < 20);havoc #t~post7; {168996#(< ~counter~0 13)} is VALID [2022-04-15 09:01:12,677 INFO L290 TraceCheckUtils]: 27: Hoare triple {168734#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168996#(< ~counter~0 13)} is VALID [2022-04-15 09:01:12,677 INFO L290 TraceCheckUtils]: 26: Hoare triple {168734#(<= ~counter~0 11)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168734#(<= ~counter~0 11)} is VALID [2022-04-15 09:01:12,678 INFO L290 TraceCheckUtils]: 25: Hoare triple {168734#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {168734#(<= ~counter~0 11)} is VALID [2022-04-15 09:01:12,679 INFO L290 TraceCheckUtils]: 24: Hoare triple {168721#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168734#(<= ~counter~0 11)} is VALID [2022-04-15 09:01:12,679 INFO L290 TraceCheckUtils]: 23: Hoare triple {168721#(<= ~counter~0 10)} ~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; {168721#(<= ~counter~0 10)} is VALID [2022-04-15 09:01:12,679 INFO L290 TraceCheckUtils]: 22: Hoare triple {168721#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {168721#(<= ~counter~0 10)} is VALID [2022-04-15 09:01:12,680 INFO L290 TraceCheckUtils]: 21: Hoare triple {168721#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {168721#(<= ~counter~0 10)} is VALID [2022-04-15 09:01:12,681 INFO L290 TraceCheckUtils]: 20: Hoare triple {168648#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168721#(<= ~counter~0 10)} is VALID [2022-04-15 09:01:12,681 INFO L290 TraceCheckUtils]: 19: Hoare triple {168648#(<= ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,681 INFO L290 TraceCheckUtils]: 18: Hoare triple {168648#(<= ~counter~0 9)} assume !!(#t~post6 < 20);havoc #t~post6; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,682 INFO L290 TraceCheckUtils]: 17: Hoare triple {168638#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168648#(<= ~counter~0 9)} is VALID [2022-04-15 09:01:12,683 INFO L290 TraceCheckUtils]: 16: Hoare triple {168638#(<= ~counter~0 8)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {168638#(<= ~counter~0 8)} is VALID [2022-04-15 09:01:12,683 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {168442#true} {168638#(<= ~counter~0 8)} #96#return; {168638#(<= ~counter~0 8)} is VALID [2022-04-15 09:01:12,683 INFO L290 TraceCheckUtils]: 14: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-15 09:01:12,683 INFO L290 TraceCheckUtils]: 13: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-15 09:01:12,683 INFO L290 TraceCheckUtils]: 12: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-15 09:01:12,683 INFO L272 TraceCheckUtils]: 11: Hoare triple {168638#(<= ~counter~0 8)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {168442#true} is VALID [2022-04-15 09:01:12,684 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168442#true} {168638#(<= ~counter~0 8)} #94#return; {168638#(<= ~counter~0 8)} is VALID [2022-04-15 09:01:12,684 INFO L290 TraceCheckUtils]: 9: Hoare triple {168442#true} assume true; {168442#true} is VALID [2022-04-15 09:01:12,684 INFO L290 TraceCheckUtils]: 8: Hoare triple {168442#true} assume !(0 == ~cond); {168442#true} is VALID [2022-04-15 09:01:12,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {168442#true} ~cond := #in~cond; {168442#true} is VALID [2022-04-15 09:01:12,684 INFO L272 TraceCheckUtils]: 6: Hoare triple {168638#(<= ~counter~0 8)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {168442#true} is VALID [2022-04-15 09:01:12,684 INFO L290 TraceCheckUtils]: 5: Hoare triple {168638#(<= ~counter~0 8)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {168638#(<= ~counter~0 8)} is VALID [2022-04-15 09:01:12,684 INFO L272 TraceCheckUtils]: 4: Hoare triple {168638#(<= ~counter~0 8)} call #t~ret9 := main(); {168638#(<= ~counter~0 8)} is VALID [2022-04-15 09:01:12,685 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168638#(<= ~counter~0 8)} {168442#true} #108#return; {168638#(<= ~counter~0 8)} is VALID [2022-04-15 09:01:12,685 INFO L290 TraceCheckUtils]: 2: Hoare triple {168638#(<= ~counter~0 8)} assume true; {168638#(<= ~counter~0 8)} is VALID [2022-04-15 09:01:12,685 INFO L290 TraceCheckUtils]: 1: Hoare triple {168442#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);~counter~0 := 0; {168638#(<= ~counter~0 8)} is VALID [2022-04-15 09:01:12,686 INFO L272 TraceCheckUtils]: 0: Hoare triple {168442#true} call ULTIMATE.init(); {168442#true} is VALID [2022-04-15 09:01:12,686 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 27 proven. 69 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-15 09:01:12,686 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:01:12,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [630348762] [2022-04-15 09:01:12,686 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:01:12,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [38011402] [2022-04-15 09:01:12,686 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [38011402] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:01:12,686 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:01:12,686 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 24 [2022-04-15 09:01:12,687 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:01:12,687 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2007236269] [2022-04-15 09:01:12,687 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2007236269] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:01:12,687 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:01:12,687 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-15 09:01:12,687 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [448254854] [2022-04-15 09:01:12,687 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:01:12,687 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 104 [2022-04-15 09:01:12,687 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:01:12,687 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 09:01:12,771 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:01:12,771 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-15 09:01:12,771 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:01:12,771 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-15 09:01:12,771 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-15 09:01:12,772 INFO L87 Difference]: Start difference. First operand 1825 states and 2413 transitions. Second operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 09:01:19,915 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:01:19,915 INFO L93 Difference]: Finished difference Result 2758 states and 3762 transitions. [2022-04-15 09:01:19,915 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-15 09:01:19,915 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 104 [2022-04-15 09:01:19,915 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:01:19,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 09:01:19,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 314 transitions. [2022-04-15 09:01:19,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 09:01:19,919 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 314 transitions. [2022-04-15 09:01:19,919 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 314 transitions. [2022-04-15 09:01:20,312 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 314 edges. 314 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:01:20,517 INFO L225 Difference]: With dead ends: 2758 [2022-04-15 09:01:20,517 INFO L226 Difference]: Without dead ends: 2189 [2022-04-15 09:01:20,519 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 216 GetRequests, 184 SyntacticMatches, 1 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 79 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=426, Invalid=630, Unknown=0, NotChecked=0, Total=1056 [2022-04-15 09:01:20,519 INFO L913 BasicCegarLoop]: 77 mSDtfsCounter, 308 mSDsluCounter, 272 mSDsCounter, 0 mSdLazyCounter, 206 mSolverCounterSat, 192 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 308 SdHoareTripleChecker+Valid, 349 SdHoareTripleChecker+Invalid, 398 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 192 IncrementalHoareTripleChecker+Valid, 206 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-15 09:01:20,519 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [308 Valid, 349 Invalid, 398 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [192 Valid, 206 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-15 09:01:20,520 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2189 states. [2022-04-15 09:01:25,722 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2189 to 2064. [2022-04-15 09:01:25,723 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:01:25,725 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-15 09:01:25,726 INFO L74 IsIncluded]: Start isIncluded. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-15 09:01:25,727 INFO L87 Difference]: Start difference. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-15 09:01:25,852 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:01:25,852 INFO L93 Difference]: Finished difference Result 2189 states and 2851 transitions. [2022-04-15 09:01:25,852 INFO L276 IsEmpty]: Start isEmpty. Operand 2189 states and 2851 transitions. [2022-04-15 09:01:25,855 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:01:25,855 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:01:25,857 INFO L74 IsIncluded]: Start isIncluded. First operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) Second operand 2189 states. [2022-04-15 09:01:25,859 INFO L87 Difference]: Start difference. First operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) Second operand 2189 states. [2022-04-15 09:01:25,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:01:25,989 INFO L93 Difference]: Finished difference Result 2189 states and 2851 transitions. [2022-04-15 09:01:25,989 INFO L276 IsEmpty]: Start isEmpty. Operand 2189 states and 2851 transitions. [2022-04-15 09:01:25,992 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:01:25,992 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:01:25,992 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:01:25,992 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:01:25,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-15 09:01:26,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2064 states to 2064 states and 2722 transitions. [2022-04-15 09:01:26,188 INFO L78 Accepts]: Start accepts. Automaton has 2064 states and 2722 transitions. Word has length 104 [2022-04-15 09:01:26,188 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:01:26,188 INFO L478 AbstractCegarLoop]: Abstraction has 2064 states and 2722 transitions. [2022-04-15 09:01:26,188 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 09:01:26,188 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2064 states and 2722 transitions. [2022-04-15 09:01:34,331 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2722 edges. 2722 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:01:34,331 INFO L276 IsEmpty]: Start isEmpty. Operand 2064 states and 2722 transitions. [2022-04-15 09:01:34,332 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-15 09:01:34,332 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:01:34,332 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:01:34,348 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Forceful destruction successful, exit code 0 [2022-04-15 09:01:34,539 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 40 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable39 [2022-04-15 09:01:34,539 INFO L403 AbstractCegarLoop]: === Iteration 41 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:01:34,539 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:01:34,540 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 7 times [2022-04-15 09:01:34,540 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:01:34,540 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1981184720] [2022-04-15 09:01:34,540 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:01:34,540 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 8 times [2022-04-15 09:01:34,540 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:01:34,540 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1281019167] [2022-04-15 09:01:34,540 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:01:34,540 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:01:34,549 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:01:34,549 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [289468270] [2022-04-15 09:01:34,549 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:01:34,549 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:01:34,550 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:01:34,550 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:01:34,571 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Waiting until timeout for monitored process [2022-04-15 09:01:34,618 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:01:34,618 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:01:34,620 INFO L263 TraceCheckSpWp]: Trace formula consists of 289 conjuncts, 74 conjunts are in the unsatisfiable core [2022-04-15 09:01:34,635 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:01:34,637 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:01:35,938 INFO L272 TraceCheckUtils]: 0: Hoare triple {183129#true} call ULTIMATE.init(); {183129#true} is VALID [2022-04-15 09:01:35,939 INFO L290 TraceCheckUtils]: 1: Hoare triple {183129#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);~counter~0 := 0; {183129#true} is VALID [2022-04-15 09:01:35,939 INFO L290 TraceCheckUtils]: 2: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,939 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183129#true} {183129#true} #108#return; {183129#true} is VALID [2022-04-15 09:01:35,939 INFO L272 TraceCheckUtils]: 4: Hoare triple {183129#true} call #t~ret9 := main(); {183129#true} is VALID [2022-04-15 09:01:35,939 INFO L290 TraceCheckUtils]: 5: Hoare triple {183129#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {183129#true} is VALID [2022-04-15 09:01:35,940 INFO L272 TraceCheckUtils]: 6: Hoare triple {183129#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:01:35,940 INFO L290 TraceCheckUtils]: 7: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:01:35,940 INFO L290 TraceCheckUtils]: 8: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:01:35,940 INFO L290 TraceCheckUtils]: 9: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,940 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {183129#true} {183129#true} #94#return; {183129#true} is VALID [2022-04-15 09:01:35,940 INFO L272 TraceCheckUtils]: 11: Hoare triple {183129#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:01:35,940 INFO L290 TraceCheckUtils]: 12: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:01:35,940 INFO L290 TraceCheckUtils]: 13: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:01:35,940 INFO L290 TraceCheckUtils]: 14: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,940 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {183129#true} {183129#true} #96#return; {183129#true} is VALID [2022-04-15 09:01:35,941 INFO L290 TraceCheckUtils]: 16: Hoare triple {183129#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {183182#(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-15 09:01:35,941 INFO L290 TraceCheckUtils]: 17: Hoare triple {183182#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183182#(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-15 09:01:35,941 INFO L290 TraceCheckUtils]: 18: Hoare triple {183182#(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 !!(#t~post6 < 20);havoc #t~post6; {183182#(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-15 09:01:35,942 INFO L290 TraceCheckUtils]: 19: Hoare triple {183182#(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; {183192#(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-15 09:01:35,942 INFO L290 TraceCheckUtils]: 20: Hoare triple {183192#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183192#(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-15 09:01:35,942 INFO L290 TraceCheckUtils]: 21: Hoare triple {183192#(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 !!(#t~post7 < 20);havoc #t~post7; {183192#(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-15 09:01:35,943 INFO L290 TraceCheckUtils]: 22: Hoare triple {183192#(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; {183202#(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-15 09:01:35,943 INFO L290 TraceCheckUtils]: 23: Hoare triple {183202#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183202#(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-15 09:01:35,944 INFO L290 TraceCheckUtils]: 24: Hoare triple {183202#(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 !!(#t~post8 < 20);havoc #t~post8; {183202#(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-15 09:01:35,944 INFO L272 TraceCheckUtils]: 25: Hoare triple {183202#(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)); {183129#true} is VALID [2022-04-15 09:01:35,944 INFO L290 TraceCheckUtils]: 26: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:01:35,944 INFO L290 TraceCheckUtils]: 27: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:01:35,944 INFO L290 TraceCheckUtils]: 28: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,945 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {183129#true} {183202#(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))} #98#return; {183202#(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-15 09:01:35,945 INFO L272 TraceCheckUtils]: 30: Hoare triple {183202#(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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:01:35,945 INFO L290 TraceCheckUtils]: 31: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:01:35,945 INFO L290 TraceCheckUtils]: 32: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:01:35,945 INFO L290 TraceCheckUtils]: 33: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,946 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {183129#true} {183202#(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))} #100#return; {183202#(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-15 09:01:35,946 INFO L272 TraceCheckUtils]: 35: Hoare triple {183202#(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 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:01:35,946 INFO L290 TraceCheckUtils]: 36: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:01:35,946 INFO L290 TraceCheckUtils]: 37: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:01:35,946 INFO L290 TraceCheckUtils]: 38: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,947 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {183129#true} {183202#(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; {183202#(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-15 09:01:35,947 INFO L272 TraceCheckUtils]: 40: Hoare triple {183202#(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 ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:01:35,947 INFO L290 TraceCheckUtils]: 41: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:01:35,947 INFO L290 TraceCheckUtils]: 42: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:01:35,947 INFO L290 TraceCheckUtils]: 43: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,948 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {183129#true} {183202#(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))} #104#return; {183202#(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-15 09:01:35,948 INFO L290 TraceCheckUtils]: 45: Hoare triple {183202#(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 !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,948 INFO L290 TraceCheckUtils]: 46: Hoare triple {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,949 INFO L290 TraceCheckUtils]: 47: Hoare triple {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,949 INFO L272 TraceCheckUtils]: 48: Hoare triple {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~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)); {183129#true} is VALID [2022-04-15 09:01:35,949 INFO L290 TraceCheckUtils]: 49: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:01:35,949 INFO L290 TraceCheckUtils]: 50: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:01:35,949 INFO L290 TraceCheckUtils]: 51: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,950 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {183129#true} {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,950 INFO L272 TraceCheckUtils]: 53: Hoare triple {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~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)); {183129#true} is VALID [2022-04-15 09:01:35,950 INFO L290 TraceCheckUtils]: 54: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:01:35,950 INFO L290 TraceCheckUtils]: 55: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:01:35,950 INFO L290 TraceCheckUtils]: 56: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,951 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {183129#true} {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,951 INFO L272 TraceCheckUtils]: 58: Hoare triple {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~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)); {183129#true} is VALID [2022-04-15 09:01:35,951 INFO L290 TraceCheckUtils]: 59: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:01:35,951 INFO L290 TraceCheckUtils]: 60: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:01:35,951 INFO L290 TraceCheckUtils]: 61: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,952 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {183129#true} {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,952 INFO L272 TraceCheckUtils]: 63: Hoare triple {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= 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)); {183129#true} is VALID [2022-04-15 09:01:35,952 INFO L290 TraceCheckUtils]: 64: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:01:35,952 INFO L290 TraceCheckUtils]: 65: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:01:35,952 INFO L290 TraceCheckUtils]: 66: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,953 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {183129#true} {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,953 INFO L290 TraceCheckUtils]: 68: Hoare triple {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,954 INFO L290 TraceCheckUtils]: 69: Hoare triple {183272#(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) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= 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; {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,955 INFO L290 TraceCheckUtils]: 70: Hoare triple {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,955 INFO L290 TraceCheckUtils]: 71: Hoare triple {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,956 INFO L290 TraceCheckUtils]: 72: Hoare triple {183345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~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; {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,956 INFO L290 TraceCheckUtils]: 73: Hoare triple {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,957 INFO L290 TraceCheckUtils]: 74: Hoare triple {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 20);havoc #t~post8; {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,957 INFO L272 TraceCheckUtils]: 75: Hoare triple {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~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)); {183129#true} is VALID [2022-04-15 09:01:35,957 INFO L290 TraceCheckUtils]: 76: Hoare triple {183129#true} ~cond := #in~cond; {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:01:35,957 INFO L290 TraceCheckUtils]: 77: Hoare triple {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:01:35,958 INFO L290 TraceCheckUtils]: 78: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:01:35,958 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,958 INFO L272 TraceCheckUtils]: 80: Hoare triple {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~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)); {183129#true} is VALID [2022-04-15 09:01:35,959 INFO L290 TraceCheckUtils]: 81: Hoare triple {183129#true} ~cond := #in~cond; {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:01:35,959 INFO L290 TraceCheckUtils]: 82: Hoare triple {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:01:35,959 INFO L290 TraceCheckUtils]: 83: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:01:35,960 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,960 INFO L272 TraceCheckUtils]: 85: Hoare triple {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~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)); {183129#true} is VALID [2022-04-15 09:01:35,960 INFO L290 TraceCheckUtils]: 86: Hoare triple {183129#true} ~cond := #in~cond; {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:01:35,960 INFO L290 TraceCheckUtils]: 87: Hoare triple {183368#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:01:35,961 INFO L290 TraceCheckUtils]: 88: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:01:35,961 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183355#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,962 INFO L272 TraceCheckUtils]: 90: Hoare triple {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:01:35,962 INFO L290 TraceCheckUtils]: 91: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:01:35,962 INFO L290 TraceCheckUtils]: 92: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:01:35,962 INFO L290 TraceCheckUtils]: 93: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:01:35,962 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {183129#true} {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} #104#return; {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,963 INFO L290 TraceCheckUtils]: 95: Hoare triple {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,964 INFO L290 TraceCheckUtils]: 96: Hoare triple {183409#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,964 INFO L290 TraceCheckUtils]: 97: Hoare triple {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,964 INFO L290 TraceCheckUtils]: 98: Hoare triple {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !!(#t~post7 < 20);havoc #t~post7; {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,965 INFO L290 TraceCheckUtils]: 99: Hoare triple {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-15 09:01:35,965 INFO L290 TraceCheckUtils]: 100: Hoare triple {183431#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= 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; {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-15 09:01:35,966 INFO L290 TraceCheckUtils]: 101: Hoare triple {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-15 09:01:35,966 INFO L290 TraceCheckUtils]: 102: Hoare triple {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-15 09:01:35,966 INFO L290 TraceCheckUtils]: 103: Hoare triple {183444#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} assume !(0 != ~b~0); {183454#(and (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-15 09:01:35,967 INFO L272 TraceCheckUtils]: 104: Hoare triple {183454#(and (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 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)); {183458#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:01:35,968 INFO L290 TraceCheckUtils]: 105: Hoare triple {183458#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {183462#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:01:35,968 INFO L290 TraceCheckUtils]: 106: Hoare triple {183462#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {183130#false} is VALID [2022-04-15 09:01:35,968 INFO L290 TraceCheckUtils]: 107: Hoare triple {183130#false} assume !false; {183130#false} is VALID [2022-04-15 09:01:35,968 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 93 proven. 46 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2022-04-15 09:01:35,968 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:02:42,381 INFO L290 TraceCheckUtils]: 107: Hoare triple {183130#false} assume !false; {183130#false} is VALID [2022-04-15 09:02:42,381 INFO L290 TraceCheckUtils]: 106: Hoare triple {183462#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {183130#false} is VALID [2022-04-15 09:02:42,382 INFO L290 TraceCheckUtils]: 105: Hoare triple {183458#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {183462#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:02:42,382 INFO L272 TraceCheckUtils]: 104: Hoare triple {183478#(= (+ (* 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)); {183458#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:02:42,383 INFO L290 TraceCheckUtils]: 103: Hoare triple {183482#(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); {183478#(= (+ (* 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-15 09:02:42,383 INFO L290 TraceCheckUtils]: 102: Hoare triple {183482#(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 !!(#t~post6 < 20);havoc #t~post6; {183482#(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-15 09:02:42,384 INFO L290 TraceCheckUtils]: 101: Hoare triple {183482#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183482#(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-15 09:02:42,527 INFO L290 TraceCheckUtils]: 100: Hoare triple {183492#(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; {183482#(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-15 09:02:42,528 INFO L290 TraceCheckUtils]: 99: Hoare triple {183492#(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); {183492#(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-15 09:02:42,528 INFO L290 TraceCheckUtils]: 98: Hoare triple {183492#(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 !!(#t~post7 < 20);havoc #t~post7; {183492#(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-15 09:02:42,528 INFO L290 TraceCheckUtils]: 97: Hoare triple {183492#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183492#(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-15 09:02:42,688 INFO L290 TraceCheckUtils]: 96: Hoare triple {183505#(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; {183492#(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-15 09:02:42,689 INFO L290 TraceCheckUtils]: 95: Hoare triple {183505#(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); {183505#(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-15 09:02:42,689 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {183129#true} {183505#(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))))} #104#return; {183505#(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-15 09:02:42,689 INFO L290 TraceCheckUtils]: 93: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,690 INFO L290 TraceCheckUtils]: 92: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:02:42,690 INFO L290 TraceCheckUtils]: 91: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:02:42,690 INFO L272 TraceCheckUtils]: 90: Hoare triple {183505#(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)); {183129#true} is VALID [2022-04-15 09:02:42,691 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183527#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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; {183505#(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-15 09:02:42,691 INFO L290 TraceCheckUtils]: 88: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:02:42,691 INFO L290 TraceCheckUtils]: 87: Hoare triple {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:02:42,692 INFO L290 TraceCheckUtils]: 86: Hoare triple {183129#true} ~cond := #in~cond; {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:02:42,692 INFO L272 TraceCheckUtils]: 85: Hoare triple {183527#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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)); {183129#true} is VALID [2022-04-15 09:02:42,693 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183544#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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))))} #100#return; {183527#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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-15 09:02:42,693 INFO L290 TraceCheckUtils]: 83: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:02:42,693 INFO L290 TraceCheckUtils]: 82: Hoare triple {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:02:42,693 INFO L290 TraceCheckUtils]: 81: Hoare triple {183129#true} ~cond := #in~cond; {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:02:42,693 INFO L272 TraceCheckUtils]: 80: Hoare triple {183544#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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)); {183129#true} is VALID [2022-04-15 09:02:42,694 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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))))} #98#return; {183544#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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-15 09:02:42,695 INFO L290 TraceCheckUtils]: 78: Hoare triple {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:02:42,695 INFO L290 TraceCheckUtils]: 77: Hoare triple {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183372#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:02:42,695 INFO L290 TraceCheckUtils]: 76: Hoare triple {183129#true} ~cond := #in~cond; {183537#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:02:42,695 INFO L272 TraceCheckUtils]: 75: Hoare triple {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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)); {183129#true} is VALID [2022-04-15 09:02:42,696 INFO L290 TraceCheckUtils]: 74: Hoare triple {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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 !!(#t~post8 < 20);havoc #t~post8; {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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-15 09:02:42,697 INFO L290 TraceCheckUtils]: 73: Hoare triple {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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-15 09:02:42,846 INFO L290 TraceCheckUtils]: 72: Hoare triple {183129#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183560#(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)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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-15 09:02:42,846 INFO L290 TraceCheckUtils]: 71: Hoare triple {183129#true} assume !!(#t~post7 < 20);havoc #t~post7; {183129#true} is VALID [2022-04-15 09:02:42,846 INFO L290 TraceCheckUtils]: 70: Hoare triple {183129#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183129#true} is VALID [2022-04-15 09:02:42,846 INFO L290 TraceCheckUtils]: 69: Hoare triple {183129#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183129#true} is VALID [2022-04-15 09:02:42,846 INFO L290 TraceCheckUtils]: 68: Hoare triple {183129#true} assume !(~c~0 >= 2 * ~v~0); {183129#true} is VALID [2022-04-15 09:02:42,846 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {183129#true} {183129#true} #104#return; {183129#true} is VALID [2022-04-15 09:02:42,846 INFO L290 TraceCheckUtils]: 66: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,846 INFO L290 TraceCheckUtils]: 65: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:02:42,846 INFO L290 TraceCheckUtils]: 64: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:02:42,846 INFO L272 TraceCheckUtils]: 63: Hoare triple {183129#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:02:42,846 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {183129#true} {183129#true} #102#return; {183129#true} is VALID [2022-04-15 09:02:42,846 INFO L290 TraceCheckUtils]: 61: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L290 TraceCheckUtils]: 60: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L290 TraceCheckUtils]: 59: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L272 TraceCheckUtils]: 58: Hoare triple {183129#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {183129#true} {183129#true} #100#return; {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L290 TraceCheckUtils]: 56: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L290 TraceCheckUtils]: 55: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L290 TraceCheckUtils]: 54: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L272 TraceCheckUtils]: 53: Hoare triple {183129#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {183129#true} {183129#true} #98#return; {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L290 TraceCheckUtils]: 51: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L290 TraceCheckUtils]: 50: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L290 TraceCheckUtils]: 49: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L272 TraceCheckUtils]: 48: Hoare triple {183129#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L290 TraceCheckUtils]: 47: Hoare triple {183129#true} assume !!(#t~post8 < 20);havoc #t~post8; {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L290 TraceCheckUtils]: 46: Hoare triple {183129#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183129#true} is VALID [2022-04-15 09:02:42,847 INFO L290 TraceCheckUtils]: 45: Hoare triple {183129#true} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {183129#true} {183129#true} #104#return; {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L290 TraceCheckUtils]: 43: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L290 TraceCheckUtils]: 42: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L290 TraceCheckUtils]: 41: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L272 TraceCheckUtils]: 40: Hoare triple {183129#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {183129#true} {183129#true} #102#return; {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L290 TraceCheckUtils]: 38: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L290 TraceCheckUtils]: 37: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L290 TraceCheckUtils]: 36: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L272 TraceCheckUtils]: 35: Hoare triple {183129#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {183129#true} {183129#true} #100#return; {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L290 TraceCheckUtils]: 33: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L290 TraceCheckUtils]: 32: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L290 TraceCheckUtils]: 31: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:02:42,848 INFO L272 TraceCheckUtils]: 30: Hoare triple {183129#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {183129#true} {183129#true} #98#return; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 28: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 27: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 26: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L272 TraceCheckUtils]: 25: Hoare triple {183129#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 24: Hoare triple {183129#true} assume !!(#t~post8 < 20);havoc #t~post8; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 23: Hoare triple {183129#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 22: Hoare triple {183129#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 21: Hoare triple {183129#true} assume !!(#t~post7 < 20);havoc #t~post7; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 20: Hoare triple {183129#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 19: Hoare triple {183129#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 18: Hoare triple {183129#true} assume !!(#t~post6 < 20);havoc #t~post6; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 17: Hoare triple {183129#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L290 TraceCheckUtils]: 16: Hoare triple {183129#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {183129#true} is VALID [2022-04-15 09:02:42,849 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {183129#true} {183129#true} #96#return; {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L290 TraceCheckUtils]: 14: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L290 TraceCheckUtils]: 13: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L290 TraceCheckUtils]: 12: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L272 TraceCheckUtils]: 11: Hoare triple {183129#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {183129#true} {183129#true} #94#return; {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L290 TraceCheckUtils]: 9: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L290 TraceCheckUtils]: 8: Hoare triple {183129#true} assume !(0 == ~cond); {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L290 TraceCheckUtils]: 7: Hoare triple {183129#true} ~cond := #in~cond; {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L272 TraceCheckUtils]: 6: Hoare triple {183129#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L290 TraceCheckUtils]: 5: Hoare triple {183129#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L272 TraceCheckUtils]: 4: Hoare triple {183129#true} call #t~ret9 := main(); {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183129#true} {183129#true} #108#return; {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L290 TraceCheckUtils]: 2: Hoare triple {183129#true} assume true; {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L290 TraceCheckUtils]: 1: Hoare triple {183129#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);~counter~0 := 0; {183129#true} is VALID [2022-04-15 09:02:42,850 INFO L272 TraceCheckUtils]: 0: Hoare triple {183129#true} call ULTIMATE.init(); {183129#true} is VALID [2022-04-15 09:02:42,852 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 117 proven. 12 refuted. 0 times theorem prover too weak. 197 trivial. 0 not checked. [2022-04-15 09:02:42,852 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:02:42,852 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1281019167] [2022-04-15 09:02:42,852 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:02:42,852 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [289468270] [2022-04-15 09:02:42,852 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [289468270] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:02:42,852 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:02:42,852 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 13] total 24 [2022-04-15 09:02:42,852 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:02:42,853 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1981184720] [2022-04-15 09:02:42,853 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1981184720] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:02:42,853 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:02:42,853 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-15 09:02:42,853 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1490681457] [2022-04-15 09:02:42,853 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:02:42,853 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 108 [2022-04-15 09:02:42,853 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:02:42,853 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-15 09:02:42,974 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:02:42,974 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-15 09:02:42,974 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:02:42,975 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-15 09:02:42,975 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=455, Unknown=0, NotChecked=0, Total=552 [2022-04-15 09:02:42,975 INFO L87 Difference]: Start difference. First operand 2064 states and 2722 transitions. Second operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-15 09:02:51,940 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:02:51,941 INFO L93 Difference]: Finished difference Result 2130 states and 2803 transitions. [2022-04-15 09:02:51,941 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-15 09:02:51,941 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 108 [2022-04-15 09:02:51,941 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:02:51,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-15 09:02:51,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 179 transitions. [2022-04-15 09:02:51,942 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-15 09:02:51,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 179 transitions. [2022-04-15 09:02:51,944 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 179 transitions. [2022-04-15 09:02:52,234 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 179 edges. 179 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:02:52,441 INFO L225 Difference]: With dead ends: 2130 [2022-04-15 09:02:52,442 INFO L226 Difference]: Without dead ends: 2125 [2022-04-15 09:02:52,442 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 219 GetRequests, 192 SyntacticMatches, 1 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 163 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=122, Invalid=634, Unknown=0, NotChecked=0, Total=756 [2022-04-15 09:02:52,443 INFO L913 BasicCegarLoop]: 65 mSDtfsCounter, 80 mSDsluCounter, 482 mSDsCounter, 0 mSdLazyCounter, 903 mSolverCounterSat, 86 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 98 SdHoareTripleChecker+Valid, 547 SdHoareTripleChecker+Invalid, 989 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 86 IncrementalHoareTripleChecker+Valid, 903 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-04-15 09:02:52,443 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [98 Valid, 547 Invalid, 989 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [86 Valid, 903 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-15 09:02:52,444 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2125 states. [2022-04-15 09:02:57,492 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2125 to 2071. [2022-04-15 09:02:57,493 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:02:57,495 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-15 09:02:57,496 INFO L74 IsIncluded]: Start isIncluded. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-15 09:02:57,497 INFO L87 Difference]: Start difference. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-15 09:02:57,612 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:02:57,612 INFO L93 Difference]: Finished difference Result 2125 states and 2797 transitions. [2022-04-15 09:02:57,612 INFO L276 IsEmpty]: Start isEmpty. Operand 2125 states and 2797 transitions. [2022-04-15 09:02:57,615 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:02:57,615 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:02:57,617 INFO L74 IsIncluded]: Start isIncluded. First operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) Second operand 2125 states. [2022-04-15 09:02:57,618 INFO L87 Difference]: Start difference. First operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) Second operand 2125 states. [2022-04-15 09:02:57,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:02:57,734 INFO L93 Difference]: Finished difference Result 2125 states and 2797 transitions. [2022-04-15 09:02:57,734 INFO L276 IsEmpty]: Start isEmpty. Operand 2125 states and 2797 transitions. [2022-04-15 09:02:57,737 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:02:57,737 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:02:57,737 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:02:57,737 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:02:57,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-15 09:02:57,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2071 states to 2071 states and 2721 transitions. [2022-04-15 09:02:57,924 INFO L78 Accepts]: Start accepts. Automaton has 2071 states and 2721 transitions. Word has length 108 [2022-04-15 09:02:57,924 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:02:57,924 INFO L478 AbstractCegarLoop]: Abstraction has 2071 states and 2721 transitions. [2022-04-15 09:02:57,925 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-15 09:02:57,925 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2071 states and 2721 transitions. [2022-04-15 09:03:05,853 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2721 edges. 2721 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:03:05,853 INFO L276 IsEmpty]: Start isEmpty. Operand 2071 states and 2721 transitions. [2022-04-15 09:03:05,855 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-15 09:03:05,855 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:03:05,855 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 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-15 09:03:05,873 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Forceful destruction successful, exit code 0 [2022-04-15 09:03:06,068 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 41 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable40 [2022-04-15 09:03:06,068 INFO L403 AbstractCegarLoop]: === Iteration 42 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:03:06,068 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:03:06,068 INFO L85 PathProgramCache]: Analyzing trace with hash -373909618, now seen corresponding path program 9 times [2022-04-15 09:03:06,069 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:03:06,069 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1727815993] [2022-04-15 09:03:06,069 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:03:06,069 INFO L85 PathProgramCache]: Analyzing trace with hash -373909618, now seen corresponding path program 10 times [2022-04-15 09:03:06,069 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:03:06,069 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1787335206] [2022-04-15 09:03:06,069 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:03:06,069 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:03:06,078 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:03:06,078 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [935046541] [2022-04-15 09:03:06,079 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 09:03:06,079 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:03:06,079 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:03:06,079 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:03:06,080 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Waiting until timeout for monitored process [2022-04-15 09:03:06,137 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 09:03:06,137 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:03:06,138 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 89 conjunts are in the unsatisfiable core [2022-04-15 09:03:06,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:03:06,158 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:03:37,425 INFO L272 TraceCheckUtils]: 0: Hoare triple {196460#true} call ULTIMATE.init(); {196460#true} is VALID [2022-04-15 09:03:37,425 INFO L290 TraceCheckUtils]: 1: Hoare triple {196460#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);~counter~0 := 0; {196460#true} is VALID [2022-04-15 09:03:37,425 INFO L290 TraceCheckUtils]: 2: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:03:37,426 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {196460#true} {196460#true} #108#return; {196460#true} is VALID [2022-04-15 09:03:37,426 INFO L272 TraceCheckUtils]: 4: Hoare triple {196460#true} call #t~ret9 := main(); {196460#true} is VALID [2022-04-15 09:03:37,426 INFO L290 TraceCheckUtils]: 5: Hoare triple {196460#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {196460#true} is VALID [2022-04-15 09:03:37,426 INFO L272 TraceCheckUtils]: 6: Hoare triple {196460#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:03:37,426 INFO L290 TraceCheckUtils]: 7: Hoare triple {196460#true} ~cond := #in~cond; {196486#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 09:03:37,426 INFO L290 TraceCheckUtils]: 8: Hoare triple {196486#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {196490#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:03:37,427 INFO L290 TraceCheckUtils]: 9: Hoare triple {196490#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {196490#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:03:37,427 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {196490#(not (= |assume_abort_if_not_#in~cond| 0))} {196460#true} #94#return; {196497#(<= 1 main_~x~0)} is VALID [2022-04-15 09:03:37,427 INFO L272 TraceCheckUtils]: 11: Hoare triple {196497#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:03:37,427 INFO L290 TraceCheckUtils]: 12: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:03:37,427 INFO L290 TraceCheckUtils]: 13: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:03:37,427 INFO L290 TraceCheckUtils]: 14: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:03:37,428 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {196460#true} {196497#(<= 1 main_~x~0)} #96#return; {196497#(<= 1 main_~x~0)} is VALID [2022-04-15 09:03:37,428 INFO L290 TraceCheckUtils]: 16: Hoare triple {196497#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {196516#(and (= main_~r~0 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))} is VALID [2022-04-15 09:03:37,428 INFO L290 TraceCheckUtils]: 17: Hoare triple {196516#(and (= main_~r~0 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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196516#(and (= main_~r~0 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))} is VALID [2022-04-15 09:03:37,429 INFO L290 TraceCheckUtils]: 18: Hoare triple {196516#(and (= main_~r~0 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))} assume !!(#t~post6 < 20);havoc #t~post6; {196516#(and (= main_~r~0 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))} is VALID [2022-04-15 09:03:37,429 INFO L290 TraceCheckUtils]: 19: Hoare triple {196516#(and (= main_~r~0 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))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196526#(and (= main_~r~0 0) (<= 1 main_~x~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-15 09:03:37,430 INFO L290 TraceCheckUtils]: 20: Hoare triple {196526#(and (= main_~r~0 0) (<= 1 main_~x~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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196526#(and (= main_~r~0 0) (<= 1 main_~x~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-15 09:03:37,430 INFO L290 TraceCheckUtils]: 21: Hoare triple {196526#(and (= main_~r~0 0) (<= 1 main_~x~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 !!(#t~post7 < 20);havoc #t~post7; {196526#(and (= main_~r~0 0) (<= 1 main_~x~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-15 09:03:37,430 INFO L290 TraceCheckUtils]: 22: Hoare triple {196526#(and (= main_~r~0 0) (<= 1 main_~x~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); {196526#(and (= main_~r~0 0) (<= 1 main_~x~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-15 09:03:37,431 INFO L290 TraceCheckUtils]: 23: Hoare triple {196526#(and (= main_~r~0 0) (<= 1 main_~x~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; {196539#(and (= main_~s~0 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))} is VALID [2022-04-15 09:03:37,431 INFO L290 TraceCheckUtils]: 24: Hoare triple {196539#(and (= main_~s~0 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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196539#(and (= main_~s~0 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))} is VALID [2022-04-15 09:03:37,431 INFO L290 TraceCheckUtils]: 25: Hoare triple {196539#(and (= main_~s~0 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))} assume !!(#t~post6 < 20);havoc #t~post6; {196539#(and (= main_~s~0 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))} is VALID [2022-04-15 09:03:37,432 INFO L290 TraceCheckUtils]: 26: Hoare triple {196539#(and (= main_~s~0 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))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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-15 09:03:37,432 INFO L290 TraceCheckUtils]: 27: Hoare triple {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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-15 09:03:37,433 INFO L290 TraceCheckUtils]: 28: Hoare triple {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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 !!(#t~post7 < 20);havoc #t~post7; {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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-15 09:03:37,433 INFO L290 TraceCheckUtils]: 29: Hoare triple {196549#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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-15 09:03:37,433 INFO L290 TraceCheckUtils]: 30: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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-15 09:03:37,434 INFO L290 TraceCheckUtils]: 31: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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 !!(#t~post8 < 20);havoc #t~post8; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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-15 09:03:37,434 INFO L272 TraceCheckUtils]: 32: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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)); {196460#true} is VALID [2022-04-15 09:03:37,434 INFO L290 TraceCheckUtils]: 33: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:03:37,434 INFO L290 TraceCheckUtils]: 34: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:03:37,434 INFO L290 TraceCheckUtils]: 35: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:03:37,435 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {196460#true} {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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))} #98#return; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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-15 09:03:37,435 INFO L272 TraceCheckUtils]: 37: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:03:37,435 INFO L290 TraceCheckUtils]: 38: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:03:37,435 INFO L290 TraceCheckUtils]: 39: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:03:37,435 INFO L290 TraceCheckUtils]: 40: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:03:37,436 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {196460#true} {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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))} #100#return; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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-15 09:03:37,436 INFO L272 TraceCheckUtils]: 42: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:03:37,436 INFO L290 TraceCheckUtils]: 43: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:03:37,436 INFO L290 TraceCheckUtils]: 44: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:03:37,436 INFO L290 TraceCheckUtils]: 45: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:03:37,437 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {196460#true} {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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-15 09:03:37,437 INFO L272 TraceCheckUtils]: 47: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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 ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:03:37,437 INFO L290 TraceCheckUtils]: 48: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:03:37,437 INFO L290 TraceCheckUtils]: 49: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:03:37,437 INFO L290 TraceCheckUtils]: 50: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:03:37,438 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {196460#true} {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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))} #104#return; {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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-15 09:03:37,438 INFO L290 TraceCheckUtils]: 52: Hoare triple {196559#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~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 !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~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 2))} is VALID [2022-04-15 09:03:37,439 INFO L290 TraceCheckUtils]: 53: Hoare triple {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~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 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~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 2))} is VALID [2022-04-15 09:03:37,439 INFO L290 TraceCheckUtils]: 54: Hoare triple {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~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 2))} assume !!(#t~post8 < 20);havoc #t~post8; {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~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 2))} is VALID [2022-04-15 09:03:37,439 INFO L272 TraceCheckUtils]: 55: Hoare triple {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~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 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:03:37,439 INFO L290 TraceCheckUtils]: 56: Hoare triple {196460#true} ~cond := #in~cond; {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:03:37,440 INFO L290 TraceCheckUtils]: 57: Hoare triple {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:03:37,440 INFO L290 TraceCheckUtils]: 58: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:03:37,441 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196629#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~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 2))} #98#return; {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= 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-15 09:03:37,441 INFO L272 TraceCheckUtils]: 60: Hoare triple {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= 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)); {196460#true} is VALID [2022-04-15 09:03:37,441 INFO L290 TraceCheckUtils]: 61: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:03:37,441 INFO L290 TraceCheckUtils]: 62: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:03:37,441 INFO L290 TraceCheckUtils]: 63: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:03:37,442 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {196460#true} {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= 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))))} #100#return; {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= 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-15 09:03:37,442 INFO L272 TraceCheckUtils]: 65: Hoare triple {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= 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)); {196460#true} is VALID [2022-04-15 09:03:37,442 INFO L290 TraceCheckUtils]: 66: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:03:37,442 INFO L290 TraceCheckUtils]: 67: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:03:37,442 INFO L290 TraceCheckUtils]: 68: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:03:37,443 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {196460#true} {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= 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))))} #102#return; {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= 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-15 09:03:37,443 INFO L272 TraceCheckUtils]: 70: Hoare triple {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= 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)); {196460#true} is VALID [2022-04-15 09:03:37,443 INFO L290 TraceCheckUtils]: 71: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:03:37,443 INFO L290 TraceCheckUtils]: 72: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:03:37,443 INFO L290 TraceCheckUtils]: 73: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:03:37,443 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {196460#true} {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= 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; {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= 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-15 09:03:37,445 INFO L290 TraceCheckUtils]: 75: Hoare triple {196653#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= 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);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} is VALID [2022-04-15 09:03:37,446 INFO L290 TraceCheckUtils]: 76: Hoare triple {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} is VALID [2022-04-15 09:03:37,446 INFO L290 TraceCheckUtils]: 77: Hoare triple {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} assume !!(#t~post8 < 20);havoc #t~post8; {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} is VALID [2022-04-15 09:03:37,446 INFO L272 TraceCheckUtils]: 78: Hoare triple {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:03:37,446 INFO L290 TraceCheckUtils]: 79: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:03:37,446 INFO L290 TraceCheckUtils]: 80: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:03:37,447 INFO L290 TraceCheckUtils]: 81: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:03:37,447 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {196460#true} {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} #98#return; {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} is VALID [2022-04-15 09:03:37,447 INFO L272 TraceCheckUtils]: 83: Hoare triple {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:03:37,447 INFO L290 TraceCheckUtils]: 84: Hoare triple {196460#true} ~cond := #in~cond; {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:03:37,448 INFO L290 TraceCheckUtils]: 85: Hoare triple {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:03:37,448 INFO L290 TraceCheckUtils]: 86: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:03:37,449 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196702#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} #100#return; {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} is VALID [2022-04-15 09:03:37,449 INFO L272 TraceCheckUtils]: 88: Hoare triple {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:03:37,449 INFO L290 TraceCheckUtils]: 89: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:03:37,449 INFO L290 TraceCheckUtils]: 90: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:03:37,449 INFO L290 TraceCheckUtils]: 91: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:03:37,450 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {196460#true} {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} #102#return; {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} is VALID [2022-04-15 09:03:37,450 INFO L272 TraceCheckUtils]: 93: Hoare triple {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:03:37,450 INFO L290 TraceCheckUtils]: 94: Hoare triple {196460#true} ~cond := #in~cond; {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:03:37,450 INFO L290 TraceCheckUtils]: 95: Hoare triple {196642#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:03:37,451 INFO L290 TraceCheckUtils]: 96: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:03:37,451 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} #104#return; {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} is VALID [2022-04-15 09:03:37,452 INFO L290 TraceCheckUtils]: 98: Hoare triple {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} assume !(~c~0 >= 2 * ~v~0); {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} is VALID [2022-04-15 09:03:37,453 INFO L290 TraceCheckUtils]: 99: Hoare triple {196739#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~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))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {196776#(and (= 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))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:03:37,454 INFO L290 TraceCheckUtils]: 100: Hoare triple {196776#(and (= 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))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196776#(and (= 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))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:03:37,454 INFO L290 TraceCheckUtils]: 101: Hoare triple {196776#(and (= 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))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {196776#(and (= 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))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:03:37,455 INFO L290 TraceCheckUtils]: 102: Hoare triple {196776#(and (= 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))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {196786#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (< main_~c~0 main_~b~0) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:03:37,457 INFO L290 TraceCheckUtils]: 103: Hoare triple {196786#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (< main_~c~0 main_~b~0) (<= (* 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; {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:03:37,458 INFO L290 TraceCheckUtils]: 104: Hoare triple {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:03:37,459 INFO L290 TraceCheckUtils]: 105: Hoare triple {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:03:37,459 INFO L290 TraceCheckUtils]: 106: Hoare triple {196790#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} assume !(0 != ~b~0); {196800#(and (= main_~r~0 0) (= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (= main_~s~0 1) (= (+ (* main_~q~0 main_~x~0) (* (* main_~p~0 main_~x~0) 4)) 0) (= main_~a~0 (* main_~p~0 main_~x~0)) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:03:37,460 INFO L272 TraceCheckUtils]: 107: Hoare triple {196800#(and (= main_~r~0 0) (= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (= main_~s~0 1) (= (+ (* main_~q~0 main_~x~0) (* (* main_~p~0 main_~x~0) 4)) 0) (= main_~a~0 (* main_~p~0 main_~x~0)) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~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)); {196804#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:03:37,461 INFO L290 TraceCheckUtils]: 108: Hoare triple {196804#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {196808#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:03:37,461 INFO L290 TraceCheckUtils]: 109: Hoare triple {196808#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {196461#false} is VALID [2022-04-15 09:03:37,461 INFO L290 TraceCheckUtils]: 110: Hoare triple {196461#false} assume !false; {196461#false} is VALID [2022-04-15 09:03:37,462 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 84 proven. 64 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-15 09:03:37,462 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:04:22,740 INFO L290 TraceCheckUtils]: 110: Hoare triple {196461#false} assume !false; {196461#false} is VALID [2022-04-15 09:04:22,740 INFO L290 TraceCheckUtils]: 109: Hoare triple {196808#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {196461#false} is VALID [2022-04-15 09:04:22,740 INFO L290 TraceCheckUtils]: 108: Hoare triple {196804#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {196808#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:04:22,741 INFO L272 TraceCheckUtils]: 107: Hoare triple {196824#(= (+ (* 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)); {196804#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:04:22,741 INFO L290 TraceCheckUtils]: 106: Hoare triple {196828#(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); {196824#(= (+ (* 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-15 09:04:22,742 INFO L290 TraceCheckUtils]: 105: Hoare triple {196828#(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 !!(#t~post6 < 20);havoc #t~post6; {196828#(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-15 09:04:22,742 INFO L290 TraceCheckUtils]: 104: Hoare triple {196828#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196828#(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-15 09:04:22,823 INFO L290 TraceCheckUtils]: 103: Hoare triple {196838#(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; {196828#(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-15 09:04:22,824 INFO L290 TraceCheckUtils]: 102: Hoare triple {196842#(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); {196838#(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-15 09:04:22,824 INFO L290 TraceCheckUtils]: 101: Hoare triple {196842#(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 !!(#t~post7 < 20);havoc #t~post7; {196842#(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-15 09:04:22,825 INFO L290 TraceCheckUtils]: 100: Hoare triple {196842#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196842#(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-15 09:04:23,918 INFO L290 TraceCheckUtils]: 99: Hoare triple {196852#(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; {196842#(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-15 09:04:23,919 INFO L290 TraceCheckUtils]: 98: Hoare triple {196852#(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); {196852#(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-15 09:04:23,920 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196859#(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))))} #104#return; {196852#(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-15 09:04:23,920 INFO L290 TraceCheckUtils]: 96: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:04:23,921 INFO L290 TraceCheckUtils]: 95: Hoare triple {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:04:23,921 INFO L290 TraceCheckUtils]: 94: Hoare triple {196460#true} ~cond := #in~cond; {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:04:23,921 INFO L272 TraceCheckUtils]: 93: Hoare triple {196859#(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)); {196460#true} is VALID [2022-04-15 09:04:23,922 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {196460#true} {196859#(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))))} #102#return; {196859#(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-15 09:04:23,922 INFO L290 TraceCheckUtils]: 91: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:23,922 INFO L290 TraceCheckUtils]: 90: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:04:23,922 INFO L290 TraceCheckUtils]: 89: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:04:23,922 INFO L272 TraceCheckUtils]: 88: Hoare triple {196859#(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)); {196460#true} is VALID [2022-04-15 09:04:23,923 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196891#(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))))} #100#return; {196859#(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-15 09:04:23,923 INFO L290 TraceCheckUtils]: 86: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:04:23,923 INFO L290 TraceCheckUtils]: 85: Hoare triple {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:04:23,924 INFO L290 TraceCheckUtils]: 84: Hoare triple {196460#true} ~cond := #in~cond; {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:04:23,924 INFO L272 TraceCheckUtils]: 83: Hoare triple {196891#(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)); {196460#true} is VALID [2022-04-15 09:04:23,925 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {196460#true} {196891#(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))))} #98#return; {196891#(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-15 09:04:23,925 INFO L290 TraceCheckUtils]: 81: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:23,925 INFO L290 TraceCheckUtils]: 80: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:04:23,925 INFO L290 TraceCheckUtils]: 79: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:04:23,925 INFO L272 TraceCheckUtils]: 78: Hoare triple {196891#(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 ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:04:23,925 INFO L290 TraceCheckUtils]: 77: Hoare triple {196891#(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))))} assume !!(#t~post8 < 20);havoc #t~post8; {196891#(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-15 09:04:23,926 INFO L290 TraceCheckUtils]: 76: Hoare triple {196891#(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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196891#(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-15 09:04:23,972 INFO L290 TraceCheckUtils]: 75: Hoare triple {196928#(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_~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; {196891#(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-15 09:04:23,973 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {196460#true} {196928#(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_~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; {196928#(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_~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-15 09:04:23,973 INFO L290 TraceCheckUtils]: 73: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:23,973 INFO L290 TraceCheckUtils]: 72: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:04:23,973 INFO L290 TraceCheckUtils]: 71: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:04:23,974 INFO L272 TraceCheckUtils]: 70: Hoare triple {196928#(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_~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)); {196460#true} is VALID [2022-04-15 09:04:23,974 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {196460#true} {196928#(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_~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; {196928#(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_~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-15 09:04:23,974 INFO L290 TraceCheckUtils]: 68: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:23,974 INFO L290 TraceCheckUtils]: 67: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:04:23,974 INFO L290 TraceCheckUtils]: 66: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:04:23,975 INFO L272 TraceCheckUtils]: 65: Hoare triple {196928#(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_~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)); {196460#true} is VALID [2022-04-15 09:04:23,975 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {196460#true} {196928#(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_~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))))} #100#return; {196928#(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_~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-15 09:04:23,975 INFO L290 TraceCheckUtils]: 63: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:23,975 INFO L290 TraceCheckUtils]: 62: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:04:23,975 INFO L290 TraceCheckUtils]: 61: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:04:23,975 INFO L272 TraceCheckUtils]: 60: Hoare triple {196928#(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_~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)); {196460#true} is VALID [2022-04-15 09:04:23,977 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} {196977#(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))))} #98#return; {196928#(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_~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-15 09:04:23,977 INFO L290 TraceCheckUtils]: 58: Hoare triple {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:04:23,977 INFO L290 TraceCheckUtils]: 57: Hoare triple {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196646#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:04:23,977 INFO L290 TraceCheckUtils]: 56: Hoare triple {196460#true} ~cond := #in~cond; {196869#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:04:23,977 INFO L272 TraceCheckUtils]: 55: Hoare triple {196977#(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)); {196460#true} is VALID [2022-04-15 09:04:23,978 INFO L290 TraceCheckUtils]: 54: Hoare triple {196977#(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 !!(#t~post8 < 20);havoc #t~post8; {196977#(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-15 09:04:23,979 INFO L290 TraceCheckUtils]: 53: Hoare triple {196977#(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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196977#(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-15 09:04:24,012 INFO L290 TraceCheckUtils]: 52: Hoare triple {196999#(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; {196977#(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-15 09:04:24,013 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {196460#true} {196999#(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; {196999#(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-15 09:04:24,013 INFO L290 TraceCheckUtils]: 50: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:24,013 INFO L290 TraceCheckUtils]: 49: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:04:24,013 INFO L290 TraceCheckUtils]: 48: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:04:24,013 INFO L272 TraceCheckUtils]: 47: Hoare triple {196999#(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)); {196460#true} is VALID [2022-04-15 09:04:24,014 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {196460#true} {196999#(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; {196999#(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-15 09:04:24,014 INFO L290 TraceCheckUtils]: 45: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:24,014 INFO L290 TraceCheckUtils]: 44: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:04:24,014 INFO L290 TraceCheckUtils]: 43: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:04:24,014 INFO L272 TraceCheckUtils]: 42: Hoare triple {196999#(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)); {196460#true} is VALID [2022-04-15 09:04:24,015 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {196460#true} {196999#(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))))} #100#return; {196999#(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-15 09:04:24,015 INFO L290 TraceCheckUtils]: 40: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:24,015 INFO L290 TraceCheckUtils]: 39: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:04:24,015 INFO L290 TraceCheckUtils]: 38: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:04:24,015 INFO L272 TraceCheckUtils]: 37: Hoare triple {196999#(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)); {196460#true} is VALID [2022-04-15 09:04:24,016 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {196460#true} {196999#(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))))} #98#return; {196999#(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-15 09:04:24,016 INFO L290 TraceCheckUtils]: 35: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:24,016 INFO L290 TraceCheckUtils]: 34: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:04:24,016 INFO L290 TraceCheckUtils]: 33: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:04:24,016 INFO L272 TraceCheckUtils]: 32: Hoare triple {196999#(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)); {196460#true} is VALID [2022-04-15 09:04:24,017 INFO L290 TraceCheckUtils]: 31: Hoare triple {196999#(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 !!(#t~post8 < 20);havoc #t~post8; {196999#(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-15 09:04:24,017 INFO L290 TraceCheckUtils]: 30: Hoare triple {196999#(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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196999#(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-15 09:04:24,018 INFO L290 TraceCheckUtils]: 29: Hoare triple {197069#(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; {196999#(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-15 09:04:24,018 INFO L290 TraceCheckUtils]: 28: Hoare triple {197069#(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 !!(#t~post7 < 20);havoc #t~post7; {197069#(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-15 09:04:24,019 INFO L290 TraceCheckUtils]: 27: Hoare triple {197069#(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))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {197069#(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-15 09:04:24,022 INFO L290 TraceCheckUtils]: 26: Hoare triple {196460#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {197069#(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-15 09:04:24,022 INFO L290 TraceCheckUtils]: 25: Hoare triple {196460#true} assume !!(#t~post6 < 20);havoc #t~post6; {196460#true} is VALID [2022-04-15 09:04:24,022 INFO L290 TraceCheckUtils]: 24: Hoare triple {196460#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196460#true} is VALID [2022-04-15 09:04:24,022 INFO L290 TraceCheckUtils]: 23: Hoare triple {196460#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; {196460#true} is VALID [2022-04-15 09:04:24,022 INFO L290 TraceCheckUtils]: 22: Hoare triple {196460#true} assume !(~c~0 >= ~b~0); {196460#true} is VALID [2022-04-15 09:04:24,022 INFO L290 TraceCheckUtils]: 21: Hoare triple {196460#true} assume !!(#t~post7 < 20);havoc #t~post7; {196460#true} is VALID [2022-04-15 09:04:24,022 INFO L290 TraceCheckUtils]: 20: Hoare triple {196460#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196460#true} is VALID [2022-04-15 09:04:24,022 INFO L290 TraceCheckUtils]: 19: Hoare triple {196460#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196460#true} is VALID [2022-04-15 09:04:24,022 INFO L290 TraceCheckUtils]: 18: Hoare triple {196460#true} assume !!(#t~post6 < 20);havoc #t~post6; {196460#true} is VALID [2022-04-15 09:04:24,022 INFO L290 TraceCheckUtils]: 17: Hoare triple {196460#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196460#true} is VALID [2022-04-15 09:04:24,022 INFO L290 TraceCheckUtils]: 16: Hoare triple {196460#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {196460#true} is VALID [2022-04-15 09:04:24,022 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {196460#true} {196460#true} #96#return; {196460#true} is VALID [2022-04-15 09:04:24,022 INFO L290 TraceCheckUtils]: 14: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L290 TraceCheckUtils]: 13: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L290 TraceCheckUtils]: 12: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L272 TraceCheckUtils]: 11: Hoare triple {196460#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {196460#true} {196460#true} #94#return; {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L290 TraceCheckUtils]: 9: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L290 TraceCheckUtils]: 8: Hoare triple {196460#true} assume !(0 == ~cond); {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L290 TraceCheckUtils]: 7: Hoare triple {196460#true} ~cond := #in~cond; {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L272 TraceCheckUtils]: 6: Hoare triple {196460#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L290 TraceCheckUtils]: 5: Hoare triple {196460#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L272 TraceCheckUtils]: 4: Hoare triple {196460#true} call #t~ret9 := main(); {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {196460#true} {196460#true} #108#return; {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L290 TraceCheckUtils]: 2: Hoare triple {196460#true} assume true; {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L290 TraceCheckUtils]: 1: Hoare triple {196460#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);~counter~0 := 0; {196460#true} is VALID [2022-04-15 09:04:24,023 INFO L272 TraceCheckUtils]: 0: Hoare triple {196460#true} call ULTIMATE.init(); {196460#true} is VALID [2022-04-15 09:04:24,024 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 97 proven. 45 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2022-04-15 09:04:24,024 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:04:24,024 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1787335206] [2022-04-15 09:04:24,024 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:04:24,024 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [935046541] [2022-04-15 09:04:24,024 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [935046541] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:04:24,025 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:04:24,025 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 17] total 34 [2022-04-15 09:04:24,025 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:04:24,025 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1727815993] [2022-04-15 09:04:24,025 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1727815993] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:04:24,025 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:04:24,025 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-15 09:04:24,025 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [742288869] [2022-04-15 09:04:24,025 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:04:24,025 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 111 [2022-04-15 09:04:24,026 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:04:24,026 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:04:24,168 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:04:24,168 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-15 09:04:24,168 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:04:24,168 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-15 09:04:24,168 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=170, Invalid=952, Unknown=0, NotChecked=0, Total=1122 [2022-04-15 09:04:24,169 INFO L87 Difference]: Start difference. First operand 2071 states and 2721 transitions. Second operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:04:39,801 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:04:39,802 INFO L93 Difference]: Finished difference Result 2221 states and 2903 transitions. [2022-04-15 09:04:39,802 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-15 09:04:39,802 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 111 [2022-04-15 09:04:39,802 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:04:39,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:04:39,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 215 transitions. [2022-04-15 09:04:39,804 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:04:39,805 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 215 transitions. [2022-04-15 09:04:39,805 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 215 transitions. [2022-04-15 09:04:40,192 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 215 edges. 215 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:04:40,392 INFO L225 Difference]: With dead ends: 2221 [2022-04-15 09:04:40,392 INFO L226 Difference]: Without dead ends: 2218 [2022-04-15 09:04:40,393 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 230 GetRequests, 188 SyntacticMatches, 1 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 440 ImplicationChecksByTransitivity, 2.5s TimeCoverageRelationStatistics Valid=274, Invalid=1532, Unknown=0, NotChecked=0, Total=1806 [2022-04-15 09:04:40,393 INFO L913 BasicCegarLoop]: 81 mSDtfsCounter, 124 mSDsluCounter, 795 mSDsCounter, 0 mSdLazyCounter, 1676 mSolverCounterSat, 81 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 148 SdHoareTripleChecker+Valid, 876 SdHoareTripleChecker+Invalid, 1757 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 81 IncrementalHoareTripleChecker+Valid, 1676 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:04:40,394 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [148 Valid, 876 Invalid, 1757 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [81 Valid, 1676 Invalid, 0 Unknown, 0 Unchecked, 4.0s Time] [2022-04-15 09:04:40,394 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2218 states. [2022-04-15 09:04:45,655 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2218 to 2137. [2022-04-15 09:04:45,655 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:04:45,657 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-15 09:04:45,658 INFO L74 IsIncluded]: Start isIncluded. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-15 09:04:45,660 INFO L87 Difference]: Start difference. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-15 09:04:45,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:04:45,784 INFO L93 Difference]: Finished difference Result 2218 states and 2896 transitions. [2022-04-15 09:04:45,784 INFO L276 IsEmpty]: Start isEmpty. Operand 2218 states and 2896 transitions. [2022-04-15 09:04:45,796 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:04:45,796 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:04:45,798 INFO L74 IsIncluded]: Start isIncluded. First operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) Second operand 2218 states. [2022-04-15 09:04:45,799 INFO L87 Difference]: Start difference. First operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) Second operand 2218 states. [2022-04-15 09:04:45,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:04:45,923 INFO L93 Difference]: Finished difference Result 2218 states and 2896 transitions. [2022-04-15 09:04:45,924 INFO L276 IsEmpty]: Start isEmpty. Operand 2218 states and 2896 transitions. [2022-04-15 09:04:45,926 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:04:45,926 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:04:45,926 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:04:45,926 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:04:45,928 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-15 09:04:46,120 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2137 states to 2137 states and 2784 transitions. [2022-04-15 09:04:46,121 INFO L78 Accepts]: Start accepts. Automaton has 2137 states and 2784 transitions. Word has length 111 [2022-04-15 09:04:46,121 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:04:46,121 INFO L478 AbstractCegarLoop]: Abstraction has 2137 states and 2784 transitions. [2022-04-15 09:04:46,121 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:04:46,121 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2137 states and 2784 transitions. [2022-04-15 09:04:55,532 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2784 edges. 2784 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:04:55,532 INFO L276 IsEmpty]: Start isEmpty. Operand 2137 states and 2784 transitions. [2022-04-15 09:04:55,533 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2022-04-15 09:04:55,533 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:04:55,533 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 6, 6, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:04:55,549 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Forceful destruction successful, exit code 0 [2022-04-15 09:04:55,736 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable41,42 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:04:55,738 INFO L403 AbstractCegarLoop]: === Iteration 43 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:04:55,738 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:04:55,738 INFO L85 PathProgramCache]: Analyzing trace with hash 1182187798, now seen corresponding path program 7 times [2022-04-15 09:04:55,738 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:04:55,738 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [146145764] [2022-04-15 09:04:55,738 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:04:55,738 INFO L85 PathProgramCache]: Analyzing trace with hash 1182187798, now seen corresponding path program 8 times [2022-04-15 09:04:55,738 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:04:55,739 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [200985480] [2022-04-15 09:04:55,739 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:04:55,739 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:04:55,760 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:04:55,760 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [945574386] [2022-04-15 09:04:55,760 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:04:55,760 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:04:55,760 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:04:55,761 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:04:55,761 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Waiting until timeout for monitored process [2022-04-15 09:04:55,827 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:04:55,828 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:04:55,830 INFO L263 TraceCheckSpWp]: Trace formula consists of 330 conjuncts, 107 conjunts are in the unsatisfiable core [2022-04-15 09:04:55,850 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:04:55,854 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:05:21,843 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 09:05:37,651 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 09:05:39,023 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 09:05:39,225 INFO L272 TraceCheckUtils]: 0: Hoare triple {210329#true} call ULTIMATE.init(); {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L290 TraceCheckUtils]: 1: Hoare triple {210329#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);~counter~0 := 0; {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L290 TraceCheckUtils]: 2: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210329#true} {210329#true} #108#return; {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L272 TraceCheckUtils]: 4: Hoare triple {210329#true} call #t~ret9 := main(); {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L290 TraceCheckUtils]: 5: Hoare triple {210329#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L272 TraceCheckUtils]: 6: Hoare triple {210329#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L290 TraceCheckUtils]: 7: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L290 TraceCheckUtils]: 8: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L290 TraceCheckUtils]: 9: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {210329#true} {210329#true} #94#return; {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L272 TraceCheckUtils]: 11: Hoare triple {210329#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L290 TraceCheckUtils]: 12: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:05:39,226 INFO L290 TraceCheckUtils]: 13: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:05:39,227 INFO L290 TraceCheckUtils]: 14: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:05:39,227 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {210329#true} {210329#true} #96#return; {210329#true} is VALID [2022-04-15 09:05:39,227 INFO L290 TraceCheckUtils]: 16: Hoare triple {210329#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {210382#(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-15 09:05:39,227 INFO L290 TraceCheckUtils]: 17: Hoare triple {210382#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210382#(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-15 09:05:39,228 INFO L290 TraceCheckUtils]: 18: Hoare triple {210382#(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 !!(#t~post6 < 20);havoc #t~post6; {210382#(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-15 09:05:39,228 INFO L290 TraceCheckUtils]: 19: Hoare triple {210382#(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; {210392#(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-15 09:05:39,228 INFO L290 TraceCheckUtils]: 20: Hoare triple {210392#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210392#(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-15 09:05:39,229 INFO L290 TraceCheckUtils]: 21: Hoare triple {210392#(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 !!(#t~post7 < 20);havoc #t~post7; {210392#(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-15 09:05:39,229 INFO L290 TraceCheckUtils]: 22: Hoare triple {210392#(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); {210392#(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-15 09:05:39,230 INFO L290 TraceCheckUtils]: 23: Hoare triple {210392#(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; {210405#(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-15 09:05:39,230 INFO L290 TraceCheckUtils]: 24: Hoare triple {210405#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210405#(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-15 09:05:39,230 INFO L290 TraceCheckUtils]: 25: Hoare triple {210405#(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 !!(#t~post6 < 20);havoc #t~post6; {210405#(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-15 09:05:39,231 INFO L290 TraceCheckUtils]: 26: Hoare triple {210405#(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; {210415#(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-15 09:05:39,231 INFO L290 TraceCheckUtils]: 27: Hoare triple {210415#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210415#(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-15 09:05:39,231 INFO L290 TraceCheckUtils]: 28: Hoare triple {210415#(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 !!(#t~post7 < 20);havoc #t~post7; {210415#(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-15 09:05:39,232 INFO L290 TraceCheckUtils]: 29: Hoare triple {210415#(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; {210425#(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))} is VALID [2022-04-15 09:05:39,232 INFO L290 TraceCheckUtils]: 30: Hoare triple {210425#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210425#(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))} is VALID [2022-04-15 09:05:39,233 INFO L290 TraceCheckUtils]: 31: Hoare triple {210425#(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))} assume !!(#t~post8 < 20);havoc #t~post8; {210425#(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))} is VALID [2022-04-15 09:05:39,233 INFO L272 TraceCheckUtils]: 32: Hoare triple {210425#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:05:39,233 INFO L290 TraceCheckUtils]: 33: Hoare triple {210329#true} ~cond := #in~cond; {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:05:39,233 INFO L290 TraceCheckUtils]: 34: Hoare triple {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:05:39,233 INFO L290 TraceCheckUtils]: 35: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:05:39,234 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210425#(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))} #98#return; {210449#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:05:39,234 INFO L272 TraceCheckUtils]: 37: Hoare triple {210449#(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_~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)); {210329#true} is VALID [2022-04-15 09:05:39,234 INFO L290 TraceCheckUtils]: 38: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:05:39,235 INFO L290 TraceCheckUtils]: 39: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:05:39,235 INFO L290 TraceCheckUtils]: 40: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:05:39,235 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {210329#true} {210449#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {210449#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:05:39,235 INFO L272 TraceCheckUtils]: 42: Hoare triple {210449#(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_~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)); {210329#true} is VALID [2022-04-15 09:05:39,235 INFO L290 TraceCheckUtils]: 43: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:05:39,235 INFO L290 TraceCheckUtils]: 44: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:05:39,236 INFO L290 TraceCheckUtils]: 45: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:05:39,236 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {210329#true} {210449#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {210449#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:05:39,236 INFO L272 TraceCheckUtils]: 47: Hoare triple {210449#(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_~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)); {210329#true} is VALID [2022-04-15 09:05:39,236 INFO L290 TraceCheckUtils]: 48: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:05:39,236 INFO L290 TraceCheckUtils]: 49: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:05:39,236 INFO L290 TraceCheckUtils]: 50: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:05:39,237 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210329#true} {210449#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {210449#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:05:39,237 INFO L290 TraceCheckUtils]: 52: Hoare triple {210449#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {210449#(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_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:05:39,240 INFO L290 TraceCheckUtils]: 53: Hoare triple {210449#(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_~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; {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 09:05:39,241 INFO L290 TraceCheckUtils]: 54: Hoare triple {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 09:05:39,241 INFO L290 TraceCheckUtils]: 55: Hoare triple {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} assume !!(#t~post7 < 20);havoc #t~post7; {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 09:05:39,242 INFO L290 TraceCheckUtils]: 56: Hoare triple {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-15 09:05:41,245 WARN L290 TraceCheckUtils]: 57: Hoare triple {210501#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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; {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is UNKNOWN [2022-04-15 09:05:41,248 INFO L290 TraceCheckUtils]: 58: Hoare triple {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:05:41,250 INFO L290 TraceCheckUtils]: 59: Hoare triple {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:05:41,251 INFO L290 TraceCheckUtils]: 60: Hoare triple {210514#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:05:41,253 INFO L290 TraceCheckUtils]: 61: Hoare triple {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:05:41,254 INFO L290 TraceCheckUtils]: 62: Hoare triple {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post7 < 20);havoc #t~post7; {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:05:41,256 INFO L290 TraceCheckUtils]: 63: Hoare triple {210524#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:05:41,257 INFO L290 TraceCheckUtils]: 64: Hoare triple {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:05:41,259 INFO L290 TraceCheckUtils]: 65: Hoare triple {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post8 < 20);havoc #t~post8; {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-15 09:05:41,259 INFO L272 TraceCheckUtils]: 66: Hoare triple {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:05:41,259 INFO L290 TraceCheckUtils]: 67: Hoare triple {210329#true} ~cond := #in~cond; {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:05:41,259 INFO L290 TraceCheckUtils]: 68: Hoare triple {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:05:41,260 INFO L290 TraceCheckUtils]: 69: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:05:41,261 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210534#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #98#return; {210556#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 09:05:41,261 INFO L272 TraceCheckUtils]: 71: Hoare triple {210556#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:05:41,261 INFO L290 TraceCheckUtils]: 72: Hoare triple {210329#true} ~cond := #in~cond; {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:05:41,261 INFO L290 TraceCheckUtils]: 73: Hoare triple {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:05:41,261 INFO L290 TraceCheckUtils]: 74: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:05:41,262 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210556#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #100#return; {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 09:05:41,263 INFO L272 TraceCheckUtils]: 76: Hoare triple {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:05:41,263 INFO L290 TraceCheckUtils]: 77: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:05:41,263 INFO L290 TraceCheckUtils]: 78: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:05:41,263 INFO L290 TraceCheckUtils]: 79: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:05:41,263 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {210329#true} {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #102#return; {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 09:05:41,264 INFO L272 TraceCheckUtils]: 81: Hoare triple {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:05:41,264 INFO L290 TraceCheckUtils]: 82: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:05:41,264 INFO L290 TraceCheckUtils]: 83: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:05:41,264 INFO L290 TraceCheckUtils]: 84: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:05:41,264 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {210329#true} {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #104#return; {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 09:05:41,266 INFO L290 TraceCheckUtils]: 86: Hoare triple {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} assume !(~c~0 >= 2 * ~v~0); {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-15 09:05:41,268 INFO L290 TraceCheckUtils]: 87: Hoare triple {210572#(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_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:05:41,270 INFO L290 TraceCheckUtils]: 88: Hoare triple {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:05:41,272 INFO L290 TraceCheckUtils]: 89: Hoare triple {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:05:41,274 INFO L290 TraceCheckUtils]: 90: Hoare triple {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-15 09:05:41,280 INFO L290 TraceCheckUtils]: 91: Hoare triple {210609#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= 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; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-15 09:05:41,282 INFO L290 TraceCheckUtils]: 92: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-15 09:05:41,283 INFO L290 TraceCheckUtils]: 93: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post6 < 20);havoc #t~post6; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-15 09:05:41,284 INFO L290 TraceCheckUtils]: 94: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-15 09:05:41,286 INFO L290 TraceCheckUtils]: 95: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-15 09:05:41,287 INFO L290 TraceCheckUtils]: 96: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post7 < 20);havoc #t~post7; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-15 09:05:41,288 INFO L290 TraceCheckUtils]: 97: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~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; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-15 09:05:41,290 INFO L290 TraceCheckUtils]: 98: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-15 09:05:41,291 INFO L290 TraceCheckUtils]: 99: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post8 < 20);havoc #t~post8; {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-15 09:05:41,291 INFO L272 TraceCheckUtils]: 100: Hoare triple {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~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)); {210329#true} is VALID [2022-04-15 09:05:41,291 INFO L290 TraceCheckUtils]: 101: Hoare triple {210329#true} ~cond := #in~cond; {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:05:41,291 INFO L290 TraceCheckUtils]: 102: Hoare triple {210438#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:05:41,291 INFO L290 TraceCheckUtils]: 103: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:05:41,295 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210622#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #98#return; {210662#(and (= (* main_~q~0 main_~x~0) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* (div (* (- 1) main_~x~0) main_~x~0) main_~x~0)) main_~x~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-15 09:05:41,296 INFO L272 TraceCheckUtils]: 105: Hoare triple {210662#(and (= (* main_~q~0 main_~x~0) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* (div (* (- 1) main_~x~0) main_~x~0) main_~x~0)) main_~x~0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210666#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:05:41,296 INFO L290 TraceCheckUtils]: 106: Hoare triple {210666#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {210670#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:05:41,297 INFO L290 TraceCheckUtils]: 107: Hoare triple {210670#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {210330#false} is VALID [2022-04-15 09:05:41,297 INFO L290 TraceCheckUtils]: 108: Hoare triple {210330#false} assume !false; {210330#false} is VALID [2022-04-15 09:05:41,297 INFO L134 CoverageAnalysis]: Checked inductivity of 248 backedges. 47 proven. 113 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-15 09:05:41,298 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:06:21,582 INFO L290 TraceCheckUtils]: 108: Hoare triple {210330#false} assume !false; {210330#false} is VALID [2022-04-15 09:06:21,583 INFO L290 TraceCheckUtils]: 107: Hoare triple {210670#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {210330#false} is VALID [2022-04-15 09:06:21,583 INFO L290 TraceCheckUtils]: 106: Hoare triple {210666#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {210670#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:06:21,584 INFO L272 TraceCheckUtils]: 105: Hoare triple {210686#(= 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)); {210666#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:06:21,584 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210690#(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)))))} #98#return; {210686#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-15 09:06:21,585 INFO L290 TraceCheckUtils]: 103: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:06:21,585 INFO L290 TraceCheckUtils]: 102: Hoare triple {210700#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:06:21,585 INFO L290 TraceCheckUtils]: 101: Hoare triple {210329#true} ~cond := #in~cond; {210700#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:06:21,585 INFO L272 TraceCheckUtils]: 100: Hoare triple {210690#(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)); {210329#true} is VALID [2022-04-15 09:06:21,586 INFO L290 TraceCheckUtils]: 99: Hoare triple {210690#(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 !!(#t~post8 < 20);havoc #t~post8; {210690#(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-15 09:06:21,586 INFO L290 TraceCheckUtils]: 98: Hoare triple {210690#(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)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210690#(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-15 09:06:21,587 INFO L290 TraceCheckUtils]: 97: Hoare triple {210690#(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; {210690#(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-15 09:06:21,587 INFO L290 TraceCheckUtils]: 96: Hoare triple {210690#(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 !!(#t~post7 < 20);havoc #t~post7; {210690#(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-15 09:06:21,588 INFO L290 TraceCheckUtils]: 95: Hoare triple {210690#(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)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210690#(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-15 09:06:21,588 INFO L290 TraceCheckUtils]: 94: Hoare triple {210690#(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; {210690#(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-15 09:06:21,588 INFO L290 TraceCheckUtils]: 93: Hoare triple {210690#(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 !!(#t~post6 < 20);havoc #t~post6; {210690#(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-15 09:06:21,589 INFO L290 TraceCheckUtils]: 92: Hoare triple {210690#(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)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210690#(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-15 09:06:21,604 INFO L290 TraceCheckUtils]: 91: Hoare triple {210731#(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; {210690#(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-15 09:06:21,605 INFO L290 TraceCheckUtils]: 90: Hoare triple {210731#(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); {210731#(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-15 09:06:21,605 INFO L290 TraceCheckUtils]: 89: Hoare triple {210731#(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 !!(#t~post7 < 20);havoc #t~post7; {210731#(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-15 09:06:21,605 INFO L290 TraceCheckUtils]: 88: Hoare triple {210731#(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)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210731#(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-15 09:06:21,611 INFO L290 TraceCheckUtils]: 87: Hoare triple {210744#(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; {210731#(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-15 09:06:21,611 INFO L290 TraceCheckUtils]: 86: Hoare triple {210744#(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); {210744#(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-15 09:06:21,612 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {210329#true} {210744#(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; {210744#(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-15 09:06:21,612 INFO L290 TraceCheckUtils]: 84: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:06:21,612 INFO L290 TraceCheckUtils]: 83: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:06:21,612 INFO L290 TraceCheckUtils]: 82: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:06:21,612 INFO L272 TraceCheckUtils]: 81: Hoare triple {210744#(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)); {210329#true} is VALID [2022-04-15 09:06:21,613 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {210329#true} {210744#(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)))))} #102#return; {210744#(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-15 09:06:21,613 INFO L290 TraceCheckUtils]: 79: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:06:21,613 INFO L290 TraceCheckUtils]: 78: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:06:21,613 INFO L290 TraceCheckUtils]: 77: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:06:21,613 INFO L272 TraceCheckUtils]: 76: Hoare triple {210744#(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)); {210329#true} is VALID [2022-04-15 09:06:21,614 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {210329#true} {210744#(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)))))} #100#return; {210744#(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-15 09:06:21,614 INFO L290 TraceCheckUtils]: 74: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:06:21,614 INFO L290 TraceCheckUtils]: 73: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:06:21,614 INFO L290 TraceCheckUtils]: 72: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:06:21,614 INFO L272 TraceCheckUtils]: 71: Hoare triple {210744#(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)); {210329#true} is VALID [2022-04-15 09:06:21,615 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} {210796#(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)))))} #98#return; {210744#(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-15 09:06:21,616 INFO L290 TraceCheckUtils]: 69: Hoare triple {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:06:21,616 INFO L290 TraceCheckUtils]: 68: Hoare triple {210700#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {210442#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:06:21,616 INFO L290 TraceCheckUtils]: 67: Hoare triple {210329#true} ~cond := #in~cond; {210700#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:06:21,616 INFO L272 TraceCheckUtils]: 66: Hoare triple {210796#(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)); {210329#true} is VALID [2022-04-15 09:06:21,617 INFO L290 TraceCheckUtils]: 65: Hoare triple {210796#(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 !!(#t~post8 < 20);havoc #t~post8; {210796#(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-15 09:06:21,617 INFO L290 TraceCheckUtils]: 64: Hoare triple {210796#(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)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210796#(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-15 09:06:21,618 INFO L290 TraceCheckUtils]: 63: Hoare triple {210818#(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; {210796#(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-15 09:06:21,619 INFO L290 TraceCheckUtils]: 62: Hoare triple {210818#(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 !!(#t~post7 < 20);havoc #t~post7; {210818#(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-15 09:06:21,619 INFO L290 TraceCheckUtils]: 61: Hoare triple {210818#(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)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210818#(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-15 09:06:21,622 INFO L290 TraceCheckUtils]: 60: Hoare triple {210329#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210818#(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-15 09:06:21,622 INFO L290 TraceCheckUtils]: 59: Hoare triple {210329#true} assume !!(#t~post6 < 20);havoc #t~post6; {210329#true} is VALID [2022-04-15 09:06:21,622 INFO L290 TraceCheckUtils]: 58: Hoare triple {210329#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 57: Hoare triple {210329#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; {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 56: Hoare triple {210329#true} assume !(~c~0 >= ~b~0); {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 55: Hoare triple {210329#true} assume !!(#t~post7 < 20);havoc #t~post7; {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 54: Hoare triple {210329#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 53: Hoare triple {210329#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 52: Hoare triple {210329#true} assume !(~c~0 >= 2 * ~v~0); {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210329#true} {210329#true} #104#return; {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 50: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 49: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 48: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L272 TraceCheckUtils]: 47: Hoare triple {210329#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {210329#true} {210329#true} #102#return; {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 45: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 44: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:06:21,623 INFO L290 TraceCheckUtils]: 43: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L272 TraceCheckUtils]: 42: Hoare triple {210329#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {210329#true} {210329#true} #100#return; {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L290 TraceCheckUtils]: 40: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L290 TraceCheckUtils]: 39: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L290 TraceCheckUtils]: 38: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L272 TraceCheckUtils]: 37: Hoare triple {210329#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {210329#true} {210329#true} #98#return; {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L290 TraceCheckUtils]: 35: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L290 TraceCheckUtils]: 34: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L290 TraceCheckUtils]: 33: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L272 TraceCheckUtils]: 32: Hoare triple {210329#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L290 TraceCheckUtils]: 31: Hoare triple {210329#true} assume !!(#t~post8 < 20);havoc #t~post8; {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L290 TraceCheckUtils]: 30: Hoare triple {210329#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210329#true} is VALID [2022-04-15 09:06:21,624 INFO L290 TraceCheckUtils]: 29: Hoare triple {210329#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 28: Hoare triple {210329#true} assume !!(#t~post7 < 20);havoc #t~post7; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 27: Hoare triple {210329#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 26: Hoare triple {210329#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 25: Hoare triple {210329#true} assume !!(#t~post6 < 20);havoc #t~post6; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 24: Hoare triple {210329#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 23: Hoare triple {210329#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; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 22: Hoare triple {210329#true} assume !(~c~0 >= ~b~0); {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 21: Hoare triple {210329#true} assume !!(#t~post7 < 20);havoc #t~post7; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 20: Hoare triple {210329#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 19: Hoare triple {210329#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 18: Hoare triple {210329#true} assume !!(#t~post6 < 20);havoc #t~post6; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 17: Hoare triple {210329#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 16: Hoare triple {210329#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {210329#true} {210329#true} #96#return; {210329#true} is VALID [2022-04-15 09:06:21,625 INFO L290 TraceCheckUtils]: 14: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L290 TraceCheckUtils]: 13: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L290 TraceCheckUtils]: 12: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L272 TraceCheckUtils]: 11: Hoare triple {210329#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {210329#true} {210329#true} #94#return; {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L290 TraceCheckUtils]: 9: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L290 TraceCheckUtils]: 8: Hoare triple {210329#true} assume !(0 == ~cond); {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L290 TraceCheckUtils]: 7: Hoare triple {210329#true} ~cond := #in~cond; {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L272 TraceCheckUtils]: 6: Hoare triple {210329#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L290 TraceCheckUtils]: 5: Hoare triple {210329#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L272 TraceCheckUtils]: 4: Hoare triple {210329#true} call #t~ret9 := main(); {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210329#true} {210329#true} #108#return; {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L290 TraceCheckUtils]: 2: Hoare triple {210329#true} assume true; {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L290 TraceCheckUtils]: 1: Hoare triple {210329#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);~counter~0 := 0; {210329#true} is VALID [2022-04-15 09:06:21,626 INFO L272 TraceCheckUtils]: 0: Hoare triple {210329#true} call ULTIMATE.init(); {210329#true} is VALID [2022-04-15 09:06:21,627 INFO L134 CoverageAnalysis]: Checked inductivity of 248 backedges. 102 proven. 21 refuted. 0 times theorem prover too weak. 125 trivial. 0 not checked. [2022-04-15 09:06:21,627 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:06:21,627 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [200985480] [2022-04-15 09:06:21,627 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:06:21,627 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [945574386] [2022-04-15 09:06:21,627 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [945574386] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:06:21,627 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:06:21,627 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 12] total 28 [2022-04-15 09:06:21,628 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:06:21,628 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [146145764] [2022-04-15 09:06:21,628 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [146145764] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:06:21,628 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:06:21,628 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-15 09:06:21,628 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1861229167] [2022-04-15 09:06:21,628 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:06:21,628 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 109 [2022-04-15 09:06:21,628 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:06:21,628 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-15 09:06:24,013 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 84 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:06:24,014 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-15 09:06:24,014 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:06:24,014 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-15 09:06:24,014 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=100, Invalid=656, Unknown=0, NotChecked=0, Total=756 [2022-04-15 09:06:24,014 INFO L87 Difference]: Start difference. First operand 2137 states and 2784 transitions. Second operand has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-15 09:06:28,033 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 09:06:31,848 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.80s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 09:06:33,854 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 09:06:37,788 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 09:06:46,693 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:06:46,693 INFO L93 Difference]: Finished difference Result 2272 states and 2960 transitions. [2022-04-15 09:06:46,693 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-15 09:06:46,693 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 109 [2022-04-15 09:06:46,693 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:06:46,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-15 09:06:46,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 229 transitions. [2022-04-15 09:06:46,695 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-15 09:06:46,697 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 229 transitions. [2022-04-15 09:06:46,697 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 229 transitions. [2022-04-15 09:06:49,198 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 229 edges. 228 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:06:49,415 INFO L225 Difference]: With dead ends: 2272 [2022-04-15 09:06:49,415 INFO L226 Difference]: Without dead ends: 2270 [2022-04-15 09:06:49,416 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 224 GetRequests, 188 SyntacticMatches, 3 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 216 ImplicationChecksByTransitivity, 1.7s TimeCoverageRelationStatistics Valid=156, Invalid=1034, Unknown=0, NotChecked=0, Total=1190 [2022-04-15 09:06:49,416 INFO L913 BasicCegarLoop]: 79 mSDtfsCounter, 129 mSDsluCounter, 658 mSDsCounter, 0 mSdLazyCounter, 1112 mSolverCounterSat, 77 mSolverCounterUnsat, 3 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 10.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 158 SdHoareTripleChecker+Valid, 737 SdHoareTripleChecker+Invalid, 1192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 77 IncrementalHoareTripleChecker+Valid, 1112 IncrementalHoareTripleChecker+Invalid, 3 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 10.6s IncrementalHoareTripleChecker+Time [2022-04-15 09:06:49,416 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [158 Valid, 737 Invalid, 1192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [77 Valid, 1112 Invalid, 3 Unknown, 0 Unchecked, 10.6s Time] [2022-04-15 09:06:49,417 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2270 states. [2022-04-15 09:06:54,781 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2270 to 2212. [2022-04-15 09:06:54,781 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:06:54,783 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2270 states. Second operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-15 09:06:54,785 INFO L74 IsIncluded]: Start isIncluded. First operand 2270 states. Second operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-15 09:06:54,788 INFO L87 Difference]: Start difference. First operand 2270 states. Second operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-15 09:06:54,921 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:06:54,921 INFO L93 Difference]: Finished difference Result 2270 states and 2958 transitions. [2022-04-15 09:06:54,921 INFO L276 IsEmpty]: Start isEmpty. Operand 2270 states and 2958 transitions. [2022-04-15 09:06:54,923 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:06:54,924 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:06:54,926 INFO L74 IsIncluded]: Start isIncluded. First operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) Second operand 2270 states. [2022-04-15 09:06:54,927 INFO L87 Difference]: Start difference. First operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) Second operand 2270 states. [2022-04-15 09:06:55,065 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:06:55,065 INFO L93 Difference]: Finished difference Result 2270 states and 2958 transitions. [2022-04-15 09:06:55,066 INFO L276 IsEmpty]: Start isEmpty. Operand 2270 states and 2958 transitions. [2022-04-15 09:06:55,068 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:06:55,068 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:06:55,068 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:06:55,068 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:06:55,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-15 09:06:55,275 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2212 states to 2212 states and 2885 transitions. [2022-04-15 09:06:55,276 INFO L78 Accepts]: Start accepts. Automaton has 2212 states and 2885 transitions. Word has length 109 [2022-04-15 09:06:55,276 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:06:55,276 INFO L478 AbstractCegarLoop]: Abstraction has 2212 states and 2885 transitions. [2022-04-15 09:06:55,277 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-15 09:06:55,277 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2212 states and 2885 transitions. [2022-04-15 09:07:04,875 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2885 edges. 2885 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:07:04,876 INFO L276 IsEmpty]: Start isEmpty. Operand 2212 states and 2885 transitions. [2022-04-15 09:07:04,890 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 111 [2022-04-15 09:07:04,890 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:07:04,891 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 7, 6, 5, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:07:04,910 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Forceful destruction successful, exit code 0 [2022-04-15 09:07:05,103 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable42,43 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:07:05,103 INFO L403 AbstractCegarLoop]: === Iteration 44 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:07:05,104 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:07:05,104 INFO L85 PathProgramCache]: Analyzing trace with hash 1720519159, now seen corresponding path program 9 times [2022-04-15 09:07:05,104 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:07:05,104 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1856019810] [2022-04-15 09:07:05,104 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:07:05,104 INFO L85 PathProgramCache]: Analyzing trace with hash 1720519159, now seen corresponding path program 10 times [2022-04-15 09:07:05,104 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:07:05,105 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [160733330] [2022-04-15 09:07:05,105 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:07:05,105 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:07:05,116 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:07:05,116 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [968108750] [2022-04-15 09:07:05,116 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 09:07:05,116 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:07:05,116 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:07:05,117 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 09:07:05,120 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Waiting until timeout for monitored process [2022-04-15 09:07:05,187 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 09:07:05,187 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:07:05,188 INFO L263 TraceCheckSpWp]: Trace formula consists of 349 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-15 09:07:05,211 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:07:05,213 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:07:05,761 INFO L272 TraceCheckUtils]: 0: Hoare triple {224532#true} call ULTIMATE.init(); {224532#true} is VALID [2022-04-15 09:07:05,762 INFO L290 TraceCheckUtils]: 1: Hoare triple {224532#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);~counter~0 := 0; {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,762 INFO L290 TraceCheckUtils]: 2: Hoare triple {224540#(<= ~counter~0 0)} assume true; {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,762 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {224540#(<= ~counter~0 0)} {224532#true} #108#return; {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,762 INFO L272 TraceCheckUtils]: 4: Hoare triple {224540#(<= ~counter~0 0)} call #t~ret9 := main(); {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,763 INFO L290 TraceCheckUtils]: 5: Hoare triple {224540#(<= ~counter~0 0)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,763 INFO L272 TraceCheckUtils]: 6: Hoare triple {224540#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,763 INFO L290 TraceCheckUtils]: 7: Hoare triple {224540#(<= ~counter~0 0)} ~cond := #in~cond; {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,764 INFO L290 TraceCheckUtils]: 8: Hoare triple {224540#(<= ~counter~0 0)} assume !(0 == ~cond); {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,764 INFO L290 TraceCheckUtils]: 9: Hoare triple {224540#(<= ~counter~0 0)} assume true; {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,764 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {224540#(<= ~counter~0 0)} {224540#(<= ~counter~0 0)} #94#return; {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,765 INFO L272 TraceCheckUtils]: 11: Hoare triple {224540#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,765 INFO L290 TraceCheckUtils]: 12: Hoare triple {224540#(<= ~counter~0 0)} ~cond := #in~cond; {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,765 INFO L290 TraceCheckUtils]: 13: Hoare triple {224540#(<= ~counter~0 0)} assume !(0 == ~cond); {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,765 INFO L290 TraceCheckUtils]: 14: Hoare triple {224540#(<= ~counter~0 0)} assume true; {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,766 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {224540#(<= ~counter~0 0)} {224540#(<= ~counter~0 0)} #96#return; {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,766 INFO L290 TraceCheckUtils]: 16: Hoare triple {224540#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {224540#(<= ~counter~0 0)} is VALID [2022-04-15 09:07:05,772 INFO L290 TraceCheckUtils]: 17: Hoare triple {224540#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224589#(<= ~counter~0 1)} is VALID [2022-04-15 09:07:05,773 INFO L290 TraceCheckUtils]: 18: Hoare triple {224589#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {224589#(<= ~counter~0 1)} is VALID [2022-04-15 09:07:05,773 INFO L290 TraceCheckUtils]: 19: Hoare triple {224589#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224589#(<= ~counter~0 1)} is VALID [2022-04-15 09:07:05,776 INFO L290 TraceCheckUtils]: 20: Hoare triple {224589#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224599#(<= ~counter~0 2)} is VALID [2022-04-15 09:07:05,777 INFO L290 TraceCheckUtils]: 21: Hoare triple {224599#(<= ~counter~0 2)} assume !!(#t~post7 < 20);havoc #t~post7; {224599#(<= ~counter~0 2)} is VALID [2022-04-15 09:07:05,777 INFO L290 TraceCheckUtils]: 22: Hoare triple {224599#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {224599#(<= ~counter~0 2)} is VALID [2022-04-15 09:07:05,777 INFO L290 TraceCheckUtils]: 23: Hoare triple {224599#(<= ~counter~0 2)} ~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; {224599#(<= ~counter~0 2)} is VALID [2022-04-15 09:07:05,781 INFO L290 TraceCheckUtils]: 24: Hoare triple {224599#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224612#(<= ~counter~0 3)} is VALID [2022-04-15 09:07:05,781 INFO L290 TraceCheckUtils]: 25: Hoare triple {224612#(<= ~counter~0 3)} assume !!(#t~post6 < 20);havoc #t~post6; {224612#(<= ~counter~0 3)} is VALID [2022-04-15 09:07:05,781 INFO L290 TraceCheckUtils]: 26: Hoare triple {224612#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224612#(<= ~counter~0 3)} is VALID [2022-04-15 09:07:05,783 INFO L290 TraceCheckUtils]: 27: Hoare triple {224612#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224622#(<= ~counter~0 4)} is VALID [2022-04-15 09:07:05,783 INFO L290 TraceCheckUtils]: 28: Hoare triple {224622#(<= ~counter~0 4)} assume !!(#t~post7 < 20);havoc #t~post7; {224622#(<= ~counter~0 4)} is VALID [2022-04-15 09:07:05,784 INFO L290 TraceCheckUtils]: 29: Hoare triple {224622#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {224622#(<= ~counter~0 4)} is VALID [2022-04-15 09:07:05,786 INFO L290 TraceCheckUtils]: 30: Hoare triple {224622#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,786 INFO L290 TraceCheckUtils]: 31: Hoare triple {224632#(<= ~counter~0 5)} assume !!(#t~post8 < 20);havoc #t~post8; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,787 INFO L272 TraceCheckUtils]: 32: Hoare triple {224632#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,787 INFO L290 TraceCheckUtils]: 33: Hoare triple {224632#(<= ~counter~0 5)} ~cond := #in~cond; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,787 INFO L290 TraceCheckUtils]: 34: Hoare triple {224632#(<= ~counter~0 5)} assume !(0 == ~cond); {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,788 INFO L290 TraceCheckUtils]: 35: Hoare triple {224632#(<= ~counter~0 5)} assume true; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,788 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {224632#(<= ~counter~0 5)} {224632#(<= ~counter~0 5)} #98#return; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,789 INFO L272 TraceCheckUtils]: 37: Hoare triple {224632#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,789 INFO L290 TraceCheckUtils]: 38: Hoare triple {224632#(<= ~counter~0 5)} ~cond := #in~cond; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,789 INFO L290 TraceCheckUtils]: 39: Hoare triple {224632#(<= ~counter~0 5)} assume !(0 == ~cond); {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,790 INFO L290 TraceCheckUtils]: 40: Hoare triple {224632#(<= ~counter~0 5)} assume true; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,790 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {224632#(<= ~counter~0 5)} {224632#(<= ~counter~0 5)} #100#return; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,791 INFO L272 TraceCheckUtils]: 42: Hoare triple {224632#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,791 INFO L290 TraceCheckUtils]: 43: Hoare triple {224632#(<= ~counter~0 5)} ~cond := #in~cond; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,791 INFO L290 TraceCheckUtils]: 44: Hoare triple {224632#(<= ~counter~0 5)} assume !(0 == ~cond); {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,791 INFO L290 TraceCheckUtils]: 45: Hoare triple {224632#(<= ~counter~0 5)} assume true; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,792 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {224632#(<= ~counter~0 5)} {224632#(<= ~counter~0 5)} #102#return; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,792 INFO L272 TraceCheckUtils]: 47: Hoare triple {224632#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,793 INFO L290 TraceCheckUtils]: 48: Hoare triple {224632#(<= ~counter~0 5)} ~cond := #in~cond; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,793 INFO L290 TraceCheckUtils]: 49: Hoare triple {224632#(<= ~counter~0 5)} assume !(0 == ~cond); {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,793 INFO L290 TraceCheckUtils]: 50: Hoare triple {224632#(<= ~counter~0 5)} assume true; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,794 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {224632#(<= ~counter~0 5)} {224632#(<= ~counter~0 5)} #104#return; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,794 INFO L290 TraceCheckUtils]: 52: Hoare triple {224632#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,794 INFO L290 TraceCheckUtils]: 53: Hoare triple {224632#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {224632#(<= ~counter~0 5)} is VALID [2022-04-15 09:07:05,798 INFO L290 TraceCheckUtils]: 54: Hoare triple {224632#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224705#(<= ~counter~0 6)} is VALID [2022-04-15 09:07:05,798 INFO L290 TraceCheckUtils]: 55: Hoare triple {224705#(<= ~counter~0 6)} assume !!(#t~post7 < 20);havoc #t~post7; {224705#(<= ~counter~0 6)} is VALID [2022-04-15 09:07:05,798 INFO L290 TraceCheckUtils]: 56: Hoare triple {224705#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {224705#(<= ~counter~0 6)} is VALID [2022-04-15 09:07:05,799 INFO L290 TraceCheckUtils]: 57: Hoare triple {224705#(<= ~counter~0 6)} ~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; {224705#(<= ~counter~0 6)} is VALID [2022-04-15 09:07:05,801 INFO L290 TraceCheckUtils]: 58: Hoare triple {224705#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224718#(<= ~counter~0 7)} is VALID [2022-04-15 09:07:05,801 INFO L290 TraceCheckUtils]: 59: Hoare triple {224718#(<= ~counter~0 7)} assume !!(#t~post6 < 20);havoc #t~post6; {224718#(<= ~counter~0 7)} is VALID [2022-04-15 09:07:05,801 INFO L290 TraceCheckUtils]: 60: Hoare triple {224718#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224718#(<= ~counter~0 7)} is VALID [2022-04-15 09:07:05,803 INFO L290 TraceCheckUtils]: 61: Hoare triple {224718#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224728#(<= ~counter~0 8)} is VALID [2022-04-15 09:07:05,803 INFO L290 TraceCheckUtils]: 62: Hoare triple {224728#(<= ~counter~0 8)} assume !!(#t~post7 < 20);havoc #t~post7; {224728#(<= ~counter~0 8)} is VALID [2022-04-15 09:07:05,803 INFO L290 TraceCheckUtils]: 63: Hoare triple {224728#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {224728#(<= ~counter~0 8)} is VALID [2022-04-15 09:07:05,806 INFO L290 TraceCheckUtils]: 64: Hoare triple {224728#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,806 INFO L290 TraceCheckUtils]: 65: Hoare triple {224738#(<= ~counter~0 9)} assume !!(#t~post8 < 20);havoc #t~post8; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,807 INFO L272 TraceCheckUtils]: 66: Hoare triple {224738#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,807 INFO L290 TraceCheckUtils]: 67: Hoare triple {224738#(<= ~counter~0 9)} ~cond := #in~cond; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,807 INFO L290 TraceCheckUtils]: 68: Hoare triple {224738#(<= ~counter~0 9)} assume !(0 == ~cond); {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,808 INFO L290 TraceCheckUtils]: 69: Hoare triple {224738#(<= ~counter~0 9)} assume true; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,808 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {224738#(<= ~counter~0 9)} {224738#(<= ~counter~0 9)} #98#return; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,809 INFO L272 TraceCheckUtils]: 71: Hoare triple {224738#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,809 INFO L290 TraceCheckUtils]: 72: Hoare triple {224738#(<= ~counter~0 9)} ~cond := #in~cond; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,809 INFO L290 TraceCheckUtils]: 73: Hoare triple {224738#(<= ~counter~0 9)} assume !(0 == ~cond); {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,810 INFO L290 TraceCheckUtils]: 74: Hoare triple {224738#(<= ~counter~0 9)} assume true; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,810 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {224738#(<= ~counter~0 9)} {224738#(<= ~counter~0 9)} #100#return; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,811 INFO L272 TraceCheckUtils]: 76: Hoare triple {224738#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,811 INFO L290 TraceCheckUtils]: 77: Hoare triple {224738#(<= ~counter~0 9)} ~cond := #in~cond; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,811 INFO L290 TraceCheckUtils]: 78: Hoare triple {224738#(<= ~counter~0 9)} assume !(0 == ~cond); {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,811 INFO L290 TraceCheckUtils]: 79: Hoare triple {224738#(<= ~counter~0 9)} assume true; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,812 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {224738#(<= ~counter~0 9)} {224738#(<= ~counter~0 9)} #102#return; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,812 INFO L272 TraceCheckUtils]: 81: Hoare triple {224738#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,813 INFO L290 TraceCheckUtils]: 82: Hoare triple {224738#(<= ~counter~0 9)} ~cond := #in~cond; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,813 INFO L290 TraceCheckUtils]: 83: Hoare triple {224738#(<= ~counter~0 9)} assume !(0 == ~cond); {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,813 INFO L290 TraceCheckUtils]: 84: Hoare triple {224738#(<= ~counter~0 9)} assume true; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,814 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {224738#(<= ~counter~0 9)} {224738#(<= ~counter~0 9)} #104#return; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,814 INFO L290 TraceCheckUtils]: 86: Hoare triple {224738#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,814 INFO L290 TraceCheckUtils]: 87: Hoare triple {224738#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:05,818 INFO L290 TraceCheckUtils]: 88: Hoare triple {224738#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224811#(<= ~counter~0 10)} is VALID [2022-04-15 09:07:05,819 INFO L290 TraceCheckUtils]: 89: Hoare triple {224811#(<= ~counter~0 10)} assume !!(#t~post7 < 20);havoc #t~post7; {224811#(<= ~counter~0 10)} is VALID [2022-04-15 09:07:05,819 INFO L290 TraceCheckUtils]: 90: Hoare triple {224811#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {224811#(<= ~counter~0 10)} is VALID [2022-04-15 09:07:05,819 INFO L290 TraceCheckUtils]: 91: Hoare triple {224811#(<= ~counter~0 10)} ~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; {224811#(<= ~counter~0 10)} is VALID [2022-04-15 09:07:05,823 INFO L290 TraceCheckUtils]: 92: Hoare triple {224811#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224824#(<= ~counter~0 11)} is VALID [2022-04-15 09:07:05,823 INFO L290 TraceCheckUtils]: 93: Hoare triple {224824#(<= ~counter~0 11)} assume !!(#t~post6 < 20);havoc #t~post6; {224824#(<= ~counter~0 11)} is VALID [2022-04-15 09:07:05,823 INFO L290 TraceCheckUtils]: 94: Hoare triple {224824#(<= ~counter~0 11)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224824#(<= ~counter~0 11)} is VALID [2022-04-15 09:07:05,826 INFO L290 TraceCheckUtils]: 95: Hoare triple {224824#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224834#(<= ~counter~0 12)} is VALID [2022-04-15 09:07:05,827 INFO L290 TraceCheckUtils]: 96: Hoare triple {224834#(<= ~counter~0 12)} assume !!(#t~post7 < 20);havoc #t~post7; {224834#(<= ~counter~0 12)} is VALID [2022-04-15 09:07:05,827 INFO L290 TraceCheckUtils]: 97: Hoare triple {224834#(<= ~counter~0 12)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {224834#(<= ~counter~0 12)} is VALID [2022-04-15 09:07:05,828 INFO L290 TraceCheckUtils]: 98: Hoare triple {224834#(<= ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {224844#(<= |main_#t~post8| 12)} is VALID [2022-04-15 09:07:05,828 INFO L290 TraceCheckUtils]: 99: Hoare triple {224844#(<= |main_#t~post8| 12)} assume !(#t~post8 < 20);havoc #t~post8; {224533#false} is VALID [2022-04-15 09:07:05,828 INFO L290 TraceCheckUtils]: 100: Hoare triple {224533#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {224533#false} is VALID [2022-04-15 09:07:05,828 INFO L290 TraceCheckUtils]: 101: Hoare triple {224533#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224533#false} is VALID [2022-04-15 09:07:05,828 INFO L290 TraceCheckUtils]: 102: Hoare triple {224533#false} assume !(#t~post7 < 20);havoc #t~post7; {224533#false} is VALID [2022-04-15 09:07:05,828 INFO L290 TraceCheckUtils]: 103: Hoare triple {224533#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; {224533#false} is VALID [2022-04-15 09:07:05,828 INFO L290 TraceCheckUtils]: 104: Hoare triple {224533#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224533#false} is VALID [2022-04-15 09:07:05,828 INFO L290 TraceCheckUtils]: 105: Hoare triple {224533#false} assume !(#t~post6 < 20);havoc #t~post6; {224533#false} is VALID [2022-04-15 09:07:05,828 INFO L272 TraceCheckUtils]: 106: Hoare triple {224533#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)); {224533#false} is VALID [2022-04-15 09:07:05,828 INFO L290 TraceCheckUtils]: 107: Hoare triple {224533#false} ~cond := #in~cond; {224533#false} is VALID [2022-04-15 09:07:05,829 INFO L290 TraceCheckUtils]: 108: Hoare triple {224533#false} assume 0 == ~cond; {224533#false} is VALID [2022-04-15 09:07:05,829 INFO L290 TraceCheckUtils]: 109: Hoare triple {224533#false} assume !false; {224533#false} is VALID [2022-04-15 09:07:05,829 INFO L134 CoverageAnalysis]: Checked inductivity of 235 backedges. 41 proven. 142 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-15 09:07:05,829 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:07:06,423 INFO L290 TraceCheckUtils]: 109: Hoare triple {224533#false} assume !false; {224533#false} is VALID [2022-04-15 09:07:06,423 INFO L290 TraceCheckUtils]: 108: Hoare triple {224533#false} assume 0 == ~cond; {224533#false} is VALID [2022-04-15 09:07:06,423 INFO L290 TraceCheckUtils]: 107: Hoare triple {224533#false} ~cond := #in~cond; {224533#false} is VALID [2022-04-15 09:07:06,423 INFO L272 TraceCheckUtils]: 106: Hoare triple {224533#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)); {224533#false} is VALID [2022-04-15 09:07:06,423 INFO L290 TraceCheckUtils]: 105: Hoare triple {224533#false} assume !(#t~post6 < 20);havoc #t~post6; {224533#false} is VALID [2022-04-15 09:07:06,423 INFO L290 TraceCheckUtils]: 104: Hoare triple {224533#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224533#false} is VALID [2022-04-15 09:07:06,423 INFO L290 TraceCheckUtils]: 103: Hoare triple {224533#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; {224533#false} is VALID [2022-04-15 09:07:06,423 INFO L290 TraceCheckUtils]: 102: Hoare triple {224533#false} assume !(#t~post7 < 20);havoc #t~post7; {224533#false} is VALID [2022-04-15 09:07:06,424 INFO L290 TraceCheckUtils]: 101: Hoare triple {224533#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224533#false} is VALID [2022-04-15 09:07:06,424 INFO L290 TraceCheckUtils]: 100: Hoare triple {224533#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {224533#false} is VALID [2022-04-15 09:07:06,443 INFO L290 TraceCheckUtils]: 99: Hoare triple {224908#(< |main_#t~post8| 20)} assume !(#t~post8 < 20);havoc #t~post8; {224533#false} is VALID [2022-04-15 09:07:06,444 INFO L290 TraceCheckUtils]: 98: Hoare triple {224912#(< ~counter~0 20)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {224908#(< |main_#t~post8| 20)} is VALID [2022-04-15 09:07:06,444 INFO L290 TraceCheckUtils]: 97: Hoare triple {224912#(< ~counter~0 20)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {224912#(< ~counter~0 20)} is VALID [2022-04-15 09:07:06,444 INFO L290 TraceCheckUtils]: 96: Hoare triple {224912#(< ~counter~0 20)} assume !!(#t~post7 < 20);havoc #t~post7; {224912#(< ~counter~0 20)} is VALID [2022-04-15 09:07:06,447 INFO L290 TraceCheckUtils]: 95: Hoare triple {224922#(< ~counter~0 19)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224912#(< ~counter~0 20)} is VALID [2022-04-15 09:07:06,447 INFO L290 TraceCheckUtils]: 94: Hoare triple {224922#(< ~counter~0 19)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224922#(< ~counter~0 19)} is VALID [2022-04-15 09:07:06,448 INFO L290 TraceCheckUtils]: 93: Hoare triple {224922#(< ~counter~0 19)} assume !!(#t~post6 < 20);havoc #t~post6; {224922#(< ~counter~0 19)} is VALID [2022-04-15 09:07:06,449 INFO L290 TraceCheckUtils]: 92: Hoare triple {224932#(< ~counter~0 18)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224922#(< ~counter~0 19)} is VALID [2022-04-15 09:07:06,449 INFO L290 TraceCheckUtils]: 91: Hoare triple {224932#(< ~counter~0 18)} ~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; {224932#(< ~counter~0 18)} is VALID [2022-04-15 09:07:06,449 INFO L290 TraceCheckUtils]: 90: Hoare triple {224932#(< ~counter~0 18)} assume !(~c~0 >= ~b~0); {224932#(< ~counter~0 18)} is VALID [2022-04-15 09:07:06,450 INFO L290 TraceCheckUtils]: 89: Hoare triple {224932#(< ~counter~0 18)} assume !!(#t~post7 < 20);havoc #t~post7; {224932#(< ~counter~0 18)} is VALID [2022-04-15 09:07:06,451 INFO L290 TraceCheckUtils]: 88: Hoare triple {224945#(< ~counter~0 17)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224932#(< ~counter~0 18)} is VALID [2022-04-15 09:07:06,451 INFO L290 TraceCheckUtils]: 87: Hoare triple {224945#(< ~counter~0 17)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {224945#(< ~counter~0 17)} is VALID [2022-04-15 09:07:06,452 INFO L290 TraceCheckUtils]: 86: Hoare triple {224945#(< ~counter~0 17)} assume !(~c~0 >= 2 * ~v~0); {224945#(< ~counter~0 17)} is VALID [2022-04-15 09:07:06,452 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {224532#true} {224945#(< ~counter~0 17)} #104#return; {224945#(< ~counter~0 17)} is VALID [2022-04-15 09:07:06,452 INFO L290 TraceCheckUtils]: 84: Hoare triple {224532#true} assume true; {224532#true} is VALID [2022-04-15 09:07:06,452 INFO L290 TraceCheckUtils]: 83: Hoare triple {224532#true} assume !(0 == ~cond); {224532#true} is VALID [2022-04-15 09:07:06,452 INFO L290 TraceCheckUtils]: 82: Hoare triple {224532#true} ~cond := #in~cond; {224532#true} is VALID [2022-04-15 09:07:06,452 INFO L272 TraceCheckUtils]: 81: Hoare triple {224945#(< ~counter~0 17)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {224532#true} is VALID [2022-04-15 09:07:06,453 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {224532#true} {224945#(< ~counter~0 17)} #102#return; {224945#(< ~counter~0 17)} is VALID [2022-04-15 09:07:06,453 INFO L290 TraceCheckUtils]: 79: Hoare triple {224532#true} assume true; {224532#true} is VALID [2022-04-15 09:07:06,453 INFO L290 TraceCheckUtils]: 78: Hoare triple {224532#true} assume !(0 == ~cond); {224532#true} is VALID [2022-04-15 09:07:06,453 INFO L290 TraceCheckUtils]: 77: Hoare triple {224532#true} ~cond := #in~cond; {224532#true} is VALID [2022-04-15 09:07:06,453 INFO L272 TraceCheckUtils]: 76: Hoare triple {224945#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {224532#true} is VALID [2022-04-15 09:07:06,453 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {224532#true} {224945#(< ~counter~0 17)} #100#return; {224945#(< ~counter~0 17)} is VALID [2022-04-15 09:07:06,453 INFO L290 TraceCheckUtils]: 74: Hoare triple {224532#true} assume true; {224532#true} is VALID [2022-04-15 09:07:06,454 INFO L290 TraceCheckUtils]: 73: Hoare triple {224532#true} assume !(0 == ~cond); {224532#true} is VALID [2022-04-15 09:07:06,454 INFO L290 TraceCheckUtils]: 72: Hoare triple {224532#true} ~cond := #in~cond; {224532#true} is VALID [2022-04-15 09:07:06,454 INFO L272 TraceCheckUtils]: 71: Hoare triple {224945#(< ~counter~0 17)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {224532#true} is VALID [2022-04-15 09:07:06,454 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {224532#true} {224945#(< ~counter~0 17)} #98#return; {224945#(< ~counter~0 17)} is VALID [2022-04-15 09:07:06,454 INFO L290 TraceCheckUtils]: 69: Hoare triple {224532#true} assume true; {224532#true} is VALID [2022-04-15 09:07:06,454 INFO L290 TraceCheckUtils]: 68: Hoare triple {224532#true} assume !(0 == ~cond); {224532#true} is VALID [2022-04-15 09:07:06,454 INFO L290 TraceCheckUtils]: 67: Hoare triple {224532#true} ~cond := #in~cond; {224532#true} is VALID [2022-04-15 09:07:06,454 INFO L272 TraceCheckUtils]: 66: Hoare triple {224945#(< ~counter~0 17)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {224532#true} is VALID [2022-04-15 09:07:06,455 INFO L290 TraceCheckUtils]: 65: Hoare triple {224945#(< ~counter~0 17)} assume !!(#t~post8 < 20);havoc #t~post8; {224945#(< ~counter~0 17)} is VALID [2022-04-15 09:07:06,469 INFO L290 TraceCheckUtils]: 64: Hoare triple {225018#(< ~counter~0 16)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {224945#(< ~counter~0 17)} is VALID [2022-04-15 09:07:06,470 INFO L290 TraceCheckUtils]: 63: Hoare triple {225018#(< ~counter~0 16)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {225018#(< ~counter~0 16)} is VALID [2022-04-15 09:07:06,470 INFO L290 TraceCheckUtils]: 62: Hoare triple {225018#(< ~counter~0 16)} assume !!(#t~post7 < 20);havoc #t~post7; {225018#(< ~counter~0 16)} is VALID [2022-04-15 09:07:06,473 INFO L290 TraceCheckUtils]: 61: Hoare triple {225028#(< ~counter~0 15)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {225018#(< ~counter~0 16)} is VALID [2022-04-15 09:07:06,473 INFO L290 TraceCheckUtils]: 60: Hoare triple {225028#(< ~counter~0 15)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {225028#(< ~counter~0 15)} is VALID [2022-04-15 09:07:06,473 INFO L290 TraceCheckUtils]: 59: Hoare triple {225028#(< ~counter~0 15)} assume !!(#t~post6 < 20);havoc #t~post6; {225028#(< ~counter~0 15)} is VALID [2022-04-15 09:07:06,475 INFO L290 TraceCheckUtils]: 58: Hoare triple {225038#(< ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {225028#(< ~counter~0 15)} is VALID [2022-04-15 09:07:06,475 INFO L290 TraceCheckUtils]: 57: Hoare triple {225038#(< ~counter~0 14)} ~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; {225038#(< ~counter~0 14)} is VALID [2022-04-15 09:07:06,476 INFO L290 TraceCheckUtils]: 56: Hoare triple {225038#(< ~counter~0 14)} assume !(~c~0 >= ~b~0); {225038#(< ~counter~0 14)} is VALID [2022-04-15 09:07:06,476 INFO L290 TraceCheckUtils]: 55: Hoare triple {225038#(< ~counter~0 14)} assume !!(#t~post7 < 20);havoc #t~post7; {225038#(< ~counter~0 14)} is VALID [2022-04-15 09:07:06,478 INFO L290 TraceCheckUtils]: 54: Hoare triple {224834#(<= ~counter~0 12)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {225038#(< ~counter~0 14)} is VALID [2022-04-15 09:07:06,478 INFO L290 TraceCheckUtils]: 53: Hoare triple {224834#(<= ~counter~0 12)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {224834#(<= ~counter~0 12)} is VALID [2022-04-15 09:07:06,479 INFO L290 TraceCheckUtils]: 52: Hoare triple {224834#(<= ~counter~0 12)} assume !(~c~0 >= 2 * ~v~0); {224834#(<= ~counter~0 12)} is VALID [2022-04-15 09:07:06,479 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {224532#true} {224834#(<= ~counter~0 12)} #104#return; {224834#(<= ~counter~0 12)} is VALID [2022-04-15 09:07:06,479 INFO L290 TraceCheckUtils]: 50: Hoare triple {224532#true} assume true; {224532#true} is VALID [2022-04-15 09:07:06,479 INFO L290 TraceCheckUtils]: 49: Hoare triple {224532#true} assume !(0 == ~cond); {224532#true} is VALID [2022-04-15 09:07:06,479 INFO L290 TraceCheckUtils]: 48: Hoare triple {224532#true} ~cond := #in~cond; {224532#true} is VALID [2022-04-15 09:07:06,479 INFO L272 TraceCheckUtils]: 47: Hoare triple {224834#(<= ~counter~0 12)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {224532#true} is VALID [2022-04-15 09:07:06,480 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {224532#true} {224834#(<= ~counter~0 12)} #102#return; {224834#(<= ~counter~0 12)} is VALID [2022-04-15 09:07:06,480 INFO L290 TraceCheckUtils]: 45: Hoare triple {224532#true} assume true; {224532#true} is VALID [2022-04-15 09:07:06,480 INFO L290 TraceCheckUtils]: 44: Hoare triple {224532#true} assume !(0 == ~cond); {224532#true} is VALID [2022-04-15 09:07:06,480 INFO L290 TraceCheckUtils]: 43: Hoare triple {224532#true} ~cond := #in~cond; {224532#true} is VALID [2022-04-15 09:07:06,480 INFO L272 TraceCheckUtils]: 42: Hoare triple {224834#(<= ~counter~0 12)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {224532#true} is VALID [2022-04-15 09:07:06,480 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {224532#true} {224834#(<= ~counter~0 12)} #100#return; {224834#(<= ~counter~0 12)} is VALID [2022-04-15 09:07:06,481 INFO L290 TraceCheckUtils]: 40: Hoare triple {224532#true} assume true; {224532#true} is VALID [2022-04-15 09:07:06,481 INFO L290 TraceCheckUtils]: 39: Hoare triple {224532#true} assume !(0 == ~cond); {224532#true} is VALID [2022-04-15 09:07:06,481 INFO L290 TraceCheckUtils]: 38: Hoare triple {224532#true} ~cond := #in~cond; {224532#true} is VALID [2022-04-15 09:07:06,481 INFO L272 TraceCheckUtils]: 37: Hoare triple {224834#(<= ~counter~0 12)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {224532#true} is VALID [2022-04-15 09:07:06,481 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {224532#true} {224834#(<= ~counter~0 12)} #98#return; {224834#(<= ~counter~0 12)} is VALID [2022-04-15 09:07:06,481 INFO L290 TraceCheckUtils]: 35: Hoare triple {224532#true} assume true; {224532#true} is VALID [2022-04-15 09:07:06,481 INFO L290 TraceCheckUtils]: 34: Hoare triple {224532#true} assume !(0 == ~cond); {224532#true} is VALID [2022-04-15 09:07:06,481 INFO L290 TraceCheckUtils]: 33: Hoare triple {224532#true} ~cond := #in~cond; {224532#true} is VALID [2022-04-15 09:07:06,481 INFO L272 TraceCheckUtils]: 32: Hoare triple {224834#(<= ~counter~0 12)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {224532#true} is VALID [2022-04-15 09:07:06,482 INFO L290 TraceCheckUtils]: 31: Hoare triple {224834#(<= ~counter~0 12)} assume !!(#t~post8 < 20);havoc #t~post8; {224834#(<= ~counter~0 12)} is VALID [2022-04-15 09:07:06,492 INFO L290 TraceCheckUtils]: 30: Hoare triple {224824#(<= ~counter~0 11)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {224834#(<= ~counter~0 12)} is VALID [2022-04-15 09:07:06,493 INFO L290 TraceCheckUtils]: 29: Hoare triple {224824#(<= ~counter~0 11)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {224824#(<= ~counter~0 11)} is VALID [2022-04-15 09:07:06,493 INFO L290 TraceCheckUtils]: 28: Hoare triple {224824#(<= ~counter~0 11)} assume !!(#t~post7 < 20);havoc #t~post7; {224824#(<= ~counter~0 11)} is VALID [2022-04-15 09:07:06,495 INFO L290 TraceCheckUtils]: 27: Hoare triple {224811#(<= ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224824#(<= ~counter~0 11)} is VALID [2022-04-15 09:07:06,496 INFO L290 TraceCheckUtils]: 26: Hoare triple {224811#(<= ~counter~0 10)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224811#(<= ~counter~0 10)} is VALID [2022-04-15 09:07:06,496 INFO L290 TraceCheckUtils]: 25: Hoare triple {224811#(<= ~counter~0 10)} assume !!(#t~post6 < 20);havoc #t~post6; {224811#(<= ~counter~0 10)} is VALID [2022-04-15 09:07:06,497 INFO L290 TraceCheckUtils]: 24: Hoare triple {224738#(<= ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224811#(<= ~counter~0 10)} is VALID [2022-04-15 09:07:06,498 INFO L290 TraceCheckUtils]: 23: Hoare triple {224738#(<= ~counter~0 9)} ~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; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:06,498 INFO L290 TraceCheckUtils]: 22: Hoare triple {224738#(<= ~counter~0 9)} assume !(~c~0 >= ~b~0); {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:06,498 INFO L290 TraceCheckUtils]: 21: Hoare triple {224738#(<= ~counter~0 9)} assume !!(#t~post7 < 20);havoc #t~post7; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:06,500 INFO L290 TraceCheckUtils]: 20: Hoare triple {224728#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224738#(<= ~counter~0 9)} is VALID [2022-04-15 09:07:06,501 INFO L290 TraceCheckUtils]: 19: Hoare triple {224728#(<= ~counter~0 8)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224728#(<= ~counter~0 8)} is VALID [2022-04-15 09:07:06,501 INFO L290 TraceCheckUtils]: 18: Hoare triple {224728#(<= ~counter~0 8)} assume !!(#t~post6 < 20);havoc #t~post6; {224728#(<= ~counter~0 8)} is VALID [2022-04-15 09:07:06,503 INFO L290 TraceCheckUtils]: 17: Hoare triple {224718#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224728#(<= ~counter~0 8)} is VALID [2022-04-15 09:07:06,503 INFO L290 TraceCheckUtils]: 16: Hoare triple {224718#(<= ~counter~0 7)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {224718#(<= ~counter~0 7)} is VALID [2022-04-15 09:07:06,504 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {224532#true} {224718#(<= ~counter~0 7)} #96#return; {224718#(<= ~counter~0 7)} is VALID [2022-04-15 09:07:06,504 INFO L290 TraceCheckUtils]: 14: Hoare triple {224532#true} assume true; {224532#true} is VALID [2022-04-15 09:07:06,504 INFO L290 TraceCheckUtils]: 13: Hoare triple {224532#true} assume !(0 == ~cond); {224532#true} is VALID [2022-04-15 09:07:06,504 INFO L290 TraceCheckUtils]: 12: Hoare triple {224532#true} ~cond := #in~cond; {224532#true} is VALID [2022-04-15 09:07:06,504 INFO L272 TraceCheckUtils]: 11: Hoare triple {224718#(<= ~counter~0 7)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {224532#true} is VALID [2022-04-15 09:07:06,504 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {224532#true} {224718#(<= ~counter~0 7)} #94#return; {224718#(<= ~counter~0 7)} is VALID [2022-04-15 09:07:06,504 INFO L290 TraceCheckUtils]: 9: Hoare triple {224532#true} assume true; {224532#true} is VALID [2022-04-15 09:07:06,504 INFO L290 TraceCheckUtils]: 8: Hoare triple {224532#true} assume !(0 == ~cond); {224532#true} is VALID [2022-04-15 09:07:06,505 INFO L290 TraceCheckUtils]: 7: Hoare triple {224532#true} ~cond := #in~cond; {224532#true} is VALID [2022-04-15 09:07:06,505 INFO L272 TraceCheckUtils]: 6: Hoare triple {224718#(<= ~counter~0 7)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {224532#true} is VALID [2022-04-15 09:07:06,505 INFO L290 TraceCheckUtils]: 5: Hoare triple {224718#(<= ~counter~0 7)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {224718#(<= ~counter~0 7)} is VALID [2022-04-15 09:07:06,505 INFO L272 TraceCheckUtils]: 4: Hoare triple {224718#(<= ~counter~0 7)} call #t~ret9 := main(); {224718#(<= ~counter~0 7)} is VALID [2022-04-15 09:07:06,505 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {224718#(<= ~counter~0 7)} {224532#true} #108#return; {224718#(<= ~counter~0 7)} is VALID [2022-04-15 09:07:06,506 INFO L290 TraceCheckUtils]: 2: Hoare triple {224718#(<= ~counter~0 7)} assume true; {224718#(<= ~counter~0 7)} is VALID [2022-04-15 09:07:06,506 INFO L290 TraceCheckUtils]: 1: Hoare triple {224532#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);~counter~0 := 0; {224718#(<= ~counter~0 7)} is VALID [2022-04-15 09:07:06,506 INFO L272 TraceCheckUtils]: 0: Hoare triple {224532#true} call ULTIMATE.init(); {224532#true} is VALID [2022-04-15 09:07:06,507 INFO L134 CoverageAnalysis]: Checked inductivity of 235 backedges. 41 proven. 78 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-15 09:07:06,507 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:07:06,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [160733330] [2022-04-15 09:07:06,507 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:07:06,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [968108750] [2022-04-15 09:07:06,507 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [968108750] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:07:06,507 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:07:06,507 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 24 [2022-04-15 09:07:06,507 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:07:06,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1856019810] [2022-04-15 09:07:06,507 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1856019810] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:07:06,507 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:07:06,507 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-15 09:07:06,508 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [474364393] [2022-04-15 09:07:06,508 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:07:06,508 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 4.0625) internal successors, (65), 15 states have internal predecessors, (65), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 110 [2022-04-15 09:07:06,508 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:07:06,508 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 4.0625) internal successors, (65), 15 states have internal predecessors, (65), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-15 09:07:06,624 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:07:06,624 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-15 09:07:06,624 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:07:06,624 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-15 09:07:06,625 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-15 09:07:06,625 INFO L87 Difference]: Start difference. First operand 2212 states and 2885 transitions. Second operand has 16 states, 16 states have (on average 4.0625) internal successors, (65), 15 states have internal predecessors, (65), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11)