/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/egcd2-ll_valuebound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 05:44:25,478 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 05:44:25,479 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 05:44:25,509 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 05:44:25,509 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 05:44:25,510 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 05:44:25,513 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 05:44:25,514 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 05:44:25,515 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 05:44:25,519 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 05:44:25,519 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 05:44:25,520 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 05:44:25,520 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 05:44:25,522 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 05:44:25,523 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 05:44:25,525 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 05:44:25,525 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 05:44:25,525 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 05:44:25,527 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 05:44:25,530 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 05:44:25,532 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 05:44:25,532 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 05:44:25,533 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 05:44:25,533 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 05:44:25,534 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 05:44:25,539 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 05:44:25,539 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 05:44:25,539 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 05:44:25,540 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 05:44:25,540 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 05:44:25,541 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 05:44:25,541 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 05:44:25,542 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 05:44:25,542 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 05:44:25,543 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 05:44:25,543 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 05:44:25,543 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 05:44:25,544 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 05:44:25,544 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 05:44:25,544 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 05:44:25,545 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 05:44:25,546 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 05:44:25,546 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 05:44:25,555 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 05:44:25,555 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 05:44:25,556 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 05:44:25,556 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 05:44:25,556 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 05:44:25,556 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 05:44:25,556 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 05:44:25,556 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 05:44:25,556 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 05:44:25,557 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 05:44:25,557 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 05:44:25,557 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 05:44:25,557 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 05:44:25,557 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 05:44:25,557 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 05:44:25,557 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 05:44:25,558 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 05:44:25,558 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 05:44:25,558 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:44:25,558 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 05:44:25,558 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 05:44:25,558 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 05:44:25,558 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 05:44:25,558 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 05:44:25,558 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 05:44:25,558 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-28 05:44:25,741 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 05:44:25,760 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 05:44:25,761 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 05:44:25,762 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 05:44:25,763 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 05:44:25,763 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound50.c [2022-04-28 05:44:25,807 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a920a8d00/73abff31258b40698fb1b4e226cce429/FLAG0f67521df [2022-04-28 05:44:26,115 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 05:44:26,116 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound50.c [2022-04-28 05:44:26,121 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a920a8d00/73abff31258b40698fb1b4e226cce429/FLAG0f67521df [2022-04-28 05:44:26,537 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a920a8d00/73abff31258b40698fb1b4e226cce429 [2022-04-28 05:44:26,539 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 05:44:26,540 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 05:44:26,541 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 05:44:26,541 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 05:44:26,548 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 05:44:26,555 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:44:26" (1/1) ... [2022-04-28 05:44:26,556 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@586fc61d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:44:26, skipping insertion in model container [2022-04-28 05:44:26,556 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:44:26" (1/1) ... [2022-04-28 05:44:26,560 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 05:44:26,573 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 05:44:26,728 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/egcd2-ll_valuebound50.c[490,503] [2022-04-28 05:44:26,760 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:44:26,765 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 05:44:26,783 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/egcd2-ll_valuebound50.c[490,503] [2022-04-28 05:44:26,797 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:44:26,806 INFO L208 MainTranslator]: Completed translation [2022-04-28 05:44:26,807 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:44:26 WrapperNode [2022-04-28 05:44:26,807 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 05:44:26,808 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 05:44:26,808 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 05:44:26,808 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 05:44:26,815 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:44:26" (1/1) ... [2022-04-28 05:44:26,815 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:44:26" (1/1) ... [2022-04-28 05:44:26,826 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:44:26" (1/1) ... [2022-04-28 05:44:26,826 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:44:26" (1/1) ... [2022-04-28 05:44:26,838 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:44:26" (1/1) ... [2022-04-28 05:44:26,841 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:44:26" (1/1) ... [2022-04-28 05:44:26,842 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:44:26" (1/1) ... [2022-04-28 05:44:26,843 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 05:44:26,844 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 05:44:26,844 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 05:44:26,844 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 05:44:26,844 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:44:26" (1/1) ... [2022-04-28 05:44:26,849 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:44:26,856 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:44:26,866 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-28 05:44:26,884 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-28 05:44:26,907 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 05:44:26,907 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 05:44:26,907 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 05:44:26,908 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 05:44:26,908 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 05:44:26,908 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 05:44:26,908 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 05:44:26,908 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 05:44:26,908 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 05:44:26,908 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 05:44:26,908 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 05:44:26,909 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 05:44:26,909 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 05:44:26,910 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 05:44:26,910 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 05:44:26,910 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 05:44:26,910 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 05:44:26,910 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 05:44:26,910 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 05:44:26,910 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 05:44:26,953 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 05:44:26,954 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 05:44:27,108 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 05:44:27,124 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 05:44:27,125 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-28 05:44:27,126 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:44:27 BoogieIcfgContainer [2022-04-28 05:44:27,126 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 05:44:27,127 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 05:44:27,127 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 05:44:27,145 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 05:44:27,145 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 05:44:26" (1/3) ... [2022-04-28 05:44:27,145 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@634c8bff and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:44:27, skipping insertion in model container [2022-04-28 05:44:27,145 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:44:26" (2/3) ... [2022-04-28 05:44:27,145 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@634c8bff and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:44:27, skipping insertion in model container [2022-04-28 05:44:27,146 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:44:27" (3/3) ... [2022-04-28 05:44:27,146 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd2-ll_valuebound50.c [2022-04-28 05:44:27,155 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 05:44:27,156 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 05:44:27,199 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 05:44:27,203 INFO L357 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, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@7e0889ed, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@4e33e691 [2022-04-28 05:44:27,203 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 05:44:27,209 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 20 states have (on average 1.45) internal successors, (29), 22 states have internal predecessors, (29), 14 states have call successors, (14), 4 states have call predecessors, (14), 4 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-28 05:44:27,215 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 05:44:27,216 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:44:27,216 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 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-28 05:44:27,217 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:44:27,222 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:44:27,222 INFO L85 PathProgramCache]: Analyzing trace with hash -587582002, now seen corresponding path program 1 times [2022-04-28 05:44:27,229 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:44:27,229 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1890229073] [2022-04-28 05:44:27,239 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:44:27,239 INFO L85 PathProgramCache]: Analyzing trace with hash -587582002, now seen corresponding path program 2 times [2022-04-28 05:44:27,241 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:44:27,242 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1497914473] [2022-04-28 05:44:27,242 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:44:27,242 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:44:27,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:27,399 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 05:44:27,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:27,422 INFO L290 TraceCheckUtils]: 0: Hoare triple {72#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-28 05:44:27,423 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:44:27,423 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-28 05:44:27,424 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 05:44:27,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:27,447 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,448 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,448 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,448 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-28 05:44:27,448 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 05:44:27,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:27,455 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,455 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,455 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,455 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-28 05:44:27,456 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 05:44:27,457 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:27,461 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,461 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,461 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,462 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-28 05:44:27,462 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 05:44:27,463 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:27,468 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,469 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,469 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,469 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-28 05:44:27,469 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-28 05:44:27,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:27,476 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,476 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,477 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,478 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-28 05:44:27,478 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-28 05:44:27,481 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:27,487 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,487 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,488 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,488 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-28 05:44:27,489 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {72#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 05:44:27,490 INFO L290 TraceCheckUtils]: 1: Hoare triple {72#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {43#true} is VALID [2022-04-28 05:44:27,490 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:44:27,491 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-28 05:44:27,491 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-28 05:44:27,491 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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {43#true} is VALID [2022-04-28 05:44:27,492 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {43#true} is VALID [2022-04-28 05:44:27,492 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,493 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,493 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,493 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-28 05:44:27,494 INFO L290 TraceCheckUtils]: 11: Hoare triple {44#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {44#false} is VALID [2022-04-28 05:44:27,495 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {43#true} is VALID [2022-04-28 05:44:27,495 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,495 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,496 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,496 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-28 05:44:27,496 INFO L272 TraceCheckUtils]: 17: Hoare triple {44#false} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:44:27,496 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,497 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,498 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,503 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-28 05:44:27,503 INFO L272 TraceCheckUtils]: 22: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:44:27,503 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,507 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,507 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,507 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-28 05:44:27,507 INFO L290 TraceCheckUtils]: 27: Hoare triple {44#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {44#false} is VALID [2022-04-28 05:44:27,507 INFO L272 TraceCheckUtils]: 28: Hoare triple {44#false} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {43#true} is VALID [2022-04-28 05:44:27,508 INFO L290 TraceCheckUtils]: 29: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,508 INFO L290 TraceCheckUtils]: 30: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,508 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,508 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-28 05:44:27,509 INFO L272 TraceCheckUtils]: 33: Hoare triple {44#false} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {43#true} is VALID [2022-04-28 05:44:27,509 INFO L290 TraceCheckUtils]: 34: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:44:27,511 INFO L290 TraceCheckUtils]: 35: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:44:27,511 INFO L290 TraceCheckUtils]: 36: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:44:27,511 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-28 05:44:27,511 INFO L290 TraceCheckUtils]: 38: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-28 05:44:27,512 INFO L272 TraceCheckUtils]: 39: Hoare triple {44#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {44#false} is VALID [2022-04-28 05:44:27,512 INFO L290 TraceCheckUtils]: 40: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-28 05:44:27,512 INFO L290 TraceCheckUtils]: 41: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-28 05:44:27,512 INFO L290 TraceCheckUtils]: 42: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-28 05:44:27,513 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-28 05:44:27,514 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:44:27,514 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1497914473] [2022-04-28 05:44:27,515 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1497914473] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:44:27,515 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:44:27,515 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:44:27,517 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:44:27,517 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1890229073] [2022-04-28 05:44:27,517 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1890229073] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:44:27,517 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:44:27,517 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:44:27,518 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [892765090] [2022-04-28 05:44:27,518 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:44:27,521 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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 43 [2022-04-28 05:44:27,522 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:44:27,524 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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-28 05:44:27,583 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:44:27,583 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 05:44:27,583 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:44:27,604 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 05:44:27,604 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:44:27,606 INFO L87 Difference]: Start difference. First operand has 40 states, 20 states have (on average 1.45) internal successors, (29), 22 states have internal predecessors, (29), 14 states have call successors, (14), 4 states have call predecessors, (14), 4 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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-28 05:44:27,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:27,785 INFO L93 Difference]: Finished difference Result 73 states and 118 transitions. [2022-04-28 05:44:27,785 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 05:44:27,785 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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 43 [2022-04-28 05:44:27,785 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:44:27,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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-28 05:44:27,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-28 05:44:27,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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-28 05:44:27,802 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-28 05:44:27,802 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 118 transitions. [2022-04-28 05:44:27,932 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:44:27,938 INFO L225 Difference]: With dead ends: 73 [2022-04-28 05:44:27,938 INFO L226 Difference]: Without dead ends: 35 [2022-04-28 05:44:27,941 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 21 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-28 05:44:27,943 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 20 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 42 SdHoareTripleChecker+Invalid, 27 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:44:27,943 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [32 Valid, 42 Invalid, 27 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:44:27,953 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-28 05:44:27,964 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-28 05:44:27,965 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:44:27,965 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:44:27,966 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:44:27,966 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:44:27,971 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:27,971 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-28 05:44:27,971 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-28 05:44:27,972 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:44:27,972 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:44:27,972 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 35 states. [2022-04-28 05:44:27,973 INFO L87 Difference]: Start difference. First operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 35 states. [2022-04-28 05:44:27,975 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:27,975 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-28 05:44:27,975 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-28 05:44:27,976 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:44:27,976 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:44:27,976 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:44:27,976 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:44:27,977 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:44:27,979 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 46 transitions. [2022-04-28 05:44:27,980 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 46 transitions. Word has length 43 [2022-04-28 05:44:27,980 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:44:27,980 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 46 transitions. [2022-04-28 05:44:27,980 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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-28 05:44:27,980 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 46 transitions. [2022-04-28 05:44:28,022 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:44:28,022 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-28 05:44:28,023 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-28 05:44:28,023 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:44:28,024 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 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-28 05:44:28,024 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 05:44:28,024 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:44:28,024 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:44:28,024 INFO L85 PathProgramCache]: Analyzing trace with hash 987777007, now seen corresponding path program 1 times [2022-04-28 05:44:28,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:44:28,025 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1630491402] [2022-04-28 05:44:28,025 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:44:28,025 INFO L85 PathProgramCache]: Analyzing trace with hash 987777007, now seen corresponding path program 2 times [2022-04-28 05:44:28,025 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:44:28,025 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [415069877] [2022-04-28 05:44:28,025 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:44:28,026 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:44:28,046 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:44:28,046 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [161014288] [2022-04-28 05:44:28,046 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:44:28,046 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:44:28,046 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:44:28,048 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-28 05:44:28,049 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-28 05:44:28,095 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:44:28,095 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:44:28,097 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:44:28,113 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:28,125 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:44:28,328 INFO L272 TraceCheckUtils]: 0: Hoare triple {361#true} call ULTIMATE.init(); {361#true} is VALID [2022-04-28 05:44:28,329 INFO L290 TraceCheckUtils]: 1: Hoare triple {361#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); {361#true} is VALID [2022-04-28 05:44:28,329 INFO L290 TraceCheckUtils]: 2: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,329 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {361#true} {361#true} #103#return; {361#true} is VALID [2022-04-28 05:44:28,329 INFO L272 TraceCheckUtils]: 4: Hoare triple {361#true} call #t~ret6 := main(); {361#true} is VALID [2022-04-28 05:44:28,329 INFO L290 TraceCheckUtils]: 5: Hoare triple {361#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {361#true} is VALID [2022-04-28 05:44:28,329 INFO L272 TraceCheckUtils]: 6: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,330 INFO L290 TraceCheckUtils]: 7: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:44:28,330 INFO L290 TraceCheckUtils]: 8: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:44:28,330 INFO L290 TraceCheckUtils]: 9: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,330 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {361#true} {361#true} #79#return; {361#true} is VALID [2022-04-28 05:44:28,330 INFO L290 TraceCheckUtils]: 11: Hoare triple {361#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {361#true} is VALID [2022-04-28 05:44:28,330 INFO L272 TraceCheckUtils]: 12: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,330 INFO L290 TraceCheckUtils]: 13: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:44:28,331 INFO L290 TraceCheckUtils]: 14: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:44:28,331 INFO L290 TraceCheckUtils]: 15: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,331 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {361#true} {361#true} #81#return; {361#true} is VALID [2022-04-28 05:44:28,331 INFO L272 TraceCheckUtils]: 17: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,331 INFO L290 TraceCheckUtils]: 18: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:44:28,331 INFO L290 TraceCheckUtils]: 19: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:44:28,331 INFO L290 TraceCheckUtils]: 20: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,331 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {361#true} {361#true} #83#return; {361#true} is VALID [2022-04-28 05:44:28,332 INFO L272 TraceCheckUtils]: 22: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,332 INFO L290 TraceCheckUtils]: 23: Hoare triple {361#true} ~cond := #in~cond; {435#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:44:28,332 INFO L290 TraceCheckUtils]: 24: Hoare triple {435#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:44:28,333 INFO L290 TraceCheckUtils]: 25: Hoare triple {439#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:44:28,334 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {439#(not (= |assume_abort_if_not_#in~cond| 0))} {361#true} #85#return; {446#(<= 1 main_~y~0)} is VALID [2022-04-28 05:44:28,334 INFO L290 TraceCheckUtils]: 27: Hoare triple {446#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:44:28,334 INFO L272 TraceCheckUtils]: 28: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,335 INFO L290 TraceCheckUtils]: 29: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:44:28,335 INFO L290 TraceCheckUtils]: 30: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:44:28,335 INFO L290 TraceCheckUtils]: 31: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,336 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #87#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:44:28,336 INFO L272 TraceCheckUtils]: 33: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,336 INFO L290 TraceCheckUtils]: 34: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:44:28,336 INFO L290 TraceCheckUtils]: 35: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:44:28,336 INFO L290 TraceCheckUtils]: 36: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,337 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #89#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:44:28,337 INFO L290 TraceCheckUtils]: 38: Hoare triple {450#(<= 1 main_~b~0)} assume !false; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:44:28,338 INFO L290 TraceCheckUtils]: 39: Hoare triple {450#(<= 1 main_~b~0)} assume !(0 != ~b~0); {362#false} is VALID [2022-04-28 05:44:28,338 INFO L272 TraceCheckUtils]: 40: Hoare triple {362#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {362#false} is VALID [2022-04-28 05:44:28,338 INFO L290 TraceCheckUtils]: 41: Hoare triple {362#false} ~cond := #in~cond; {362#false} is VALID [2022-04-28 05:44:28,338 INFO L290 TraceCheckUtils]: 42: Hoare triple {362#false} assume 0 == ~cond; {362#false} is VALID [2022-04-28 05:44:28,338 INFO L290 TraceCheckUtils]: 43: Hoare triple {362#false} assume !false; {362#false} is VALID [2022-04-28 05:44:28,338 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-28 05:44:28,339 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:44:28,594 INFO L290 TraceCheckUtils]: 43: Hoare triple {362#false} assume !false; {362#false} is VALID [2022-04-28 05:44:28,595 INFO L290 TraceCheckUtils]: 42: Hoare triple {362#false} assume 0 == ~cond; {362#false} is VALID [2022-04-28 05:44:28,595 INFO L290 TraceCheckUtils]: 41: Hoare triple {362#false} ~cond := #in~cond; {362#false} is VALID [2022-04-28 05:44:28,595 INFO L272 TraceCheckUtils]: 40: Hoare triple {362#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {362#false} is VALID [2022-04-28 05:44:28,596 INFO L290 TraceCheckUtils]: 39: Hoare triple {450#(<= 1 main_~b~0)} assume !(0 != ~b~0); {362#false} is VALID [2022-04-28 05:44:28,597 INFO L290 TraceCheckUtils]: 38: Hoare triple {450#(<= 1 main_~b~0)} assume !false; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:44:28,597 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #89#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:44:28,598 INFO L290 TraceCheckUtils]: 36: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,598 INFO L290 TraceCheckUtils]: 35: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:44:28,598 INFO L290 TraceCheckUtils]: 34: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:44:28,598 INFO L272 TraceCheckUtils]: 33: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,611 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {361#true} {450#(<= 1 main_~b~0)} #87#return; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:44:28,612 INFO L290 TraceCheckUtils]: 31: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,612 INFO L290 TraceCheckUtils]: 30: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:44:28,612 INFO L290 TraceCheckUtils]: 29: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:44:28,612 INFO L272 TraceCheckUtils]: 28: Hoare triple {450#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,613 INFO L290 TraceCheckUtils]: 27: Hoare triple {446#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {450#(<= 1 main_~b~0)} is VALID [2022-04-28 05:44:28,614 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {439#(not (= |assume_abort_if_not_#in~cond| 0))} {361#true} #85#return; {446#(<= 1 main_~y~0)} is VALID [2022-04-28 05:44:28,614 INFO L290 TraceCheckUtils]: 25: Hoare triple {439#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:44:28,615 INFO L290 TraceCheckUtils]: 24: Hoare triple {559#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {439#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:44:28,615 INFO L290 TraceCheckUtils]: 23: Hoare triple {361#true} ~cond := #in~cond; {559#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:44:28,615 INFO L272 TraceCheckUtils]: 22: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,615 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {361#true} {361#true} #83#return; {361#true} is VALID [2022-04-28 05:44:28,616 INFO L290 TraceCheckUtils]: 20: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,616 INFO L290 TraceCheckUtils]: 19: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:44:28,616 INFO L290 TraceCheckUtils]: 18: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:44:28,616 INFO L272 TraceCheckUtils]: 17: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,616 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {361#true} {361#true} #81#return; {361#true} is VALID [2022-04-28 05:44:28,616 INFO L290 TraceCheckUtils]: 15: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,616 INFO L290 TraceCheckUtils]: 14: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:44:28,617 INFO L290 TraceCheckUtils]: 13: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:44:28,617 INFO L272 TraceCheckUtils]: 12: Hoare triple {361#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,617 INFO L290 TraceCheckUtils]: 11: Hoare triple {361#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {361#true} is VALID [2022-04-28 05:44:28,617 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {361#true} {361#true} #79#return; {361#true} is VALID [2022-04-28 05:44:28,617 INFO L290 TraceCheckUtils]: 9: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,617 INFO L290 TraceCheckUtils]: 8: Hoare triple {361#true} assume !(0 == ~cond); {361#true} is VALID [2022-04-28 05:44:28,618 INFO L290 TraceCheckUtils]: 7: Hoare triple {361#true} ~cond := #in~cond; {361#true} is VALID [2022-04-28 05:44:28,618 INFO L272 TraceCheckUtils]: 6: Hoare triple {361#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {361#true} is VALID [2022-04-28 05:44:28,618 INFO L290 TraceCheckUtils]: 5: Hoare triple {361#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {361#true} is VALID [2022-04-28 05:44:28,618 INFO L272 TraceCheckUtils]: 4: Hoare triple {361#true} call #t~ret6 := main(); {361#true} is VALID [2022-04-28 05:44:28,619 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {361#true} {361#true} #103#return; {361#true} is VALID [2022-04-28 05:44:28,619 INFO L290 TraceCheckUtils]: 2: Hoare triple {361#true} assume true; {361#true} is VALID [2022-04-28 05:44:28,619 INFO L290 TraceCheckUtils]: 1: Hoare triple {361#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); {361#true} is VALID [2022-04-28 05:44:28,619 INFO L272 TraceCheckUtils]: 0: Hoare triple {361#true} call ULTIMATE.init(); {361#true} is VALID [2022-04-28 05:44:28,619 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-28 05:44:28,620 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:44:28,620 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [415069877] [2022-04-28 05:44:28,620 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:44:28,620 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [161014288] [2022-04-28 05:44:28,620 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [161014288] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:44:28,620 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:44:28,620 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-04-28 05:44:28,621 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:44:28,621 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1630491402] [2022-04-28 05:44:28,621 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1630491402] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:44:28,621 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:44:28,621 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:44:28,621 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1768935381] [2022-04-28 05:44:28,622 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:44:28,622 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 44 [2022-04-28 05:44:28,623 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:44:28,623 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:44:28,644 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-28 05:44:28,644 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:44:28,644 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:44:28,645 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:44:28,645 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 05:44:28,645 INFO L87 Difference]: Start difference. First operand 35 states and 46 transitions. Second operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:44:28,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:28,939 INFO L93 Difference]: Finished difference Result 52 states and 69 transitions. [2022-04-28 05:44:28,939 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:44:28,939 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 44 [2022-04-28 05:44:28,940 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:44:28,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:44:28,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-28 05:44:28,948 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:44:28,952 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-28 05:44:28,952 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-28 05:44:29,021 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:44:29,023 INFO L225 Difference]: With dead ends: 52 [2022-04-28 05:44:29,024 INFO L226 Difference]: Without dead ends: 44 [2022-04-28 05:44:29,024 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 81 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:44:29,026 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 19 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 90 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 90 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:44:29,028 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [24 Valid, 128 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 90 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:44:29,029 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-28 05:44:29,049 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-28 05:44:29,050 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:44:29,050 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:44:29,051 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:44:29,053 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:44:29,058 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:29,058 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-28 05:44:29,058 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-28 05:44:29,061 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:44:29,061 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:44:29,062 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 44 states. [2022-04-28 05:44:29,062 INFO L87 Difference]: Start difference. First operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 44 states. [2022-04-28 05:44:29,070 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:29,070 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-28 05:44:29,070 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-28 05:44:29,073 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:44:29,073 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:44:29,073 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:44:29,073 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:44:29,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 05:44:29,077 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 48 transitions. [2022-04-28 05:44:29,077 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 48 transitions. Word has length 44 [2022-04-28 05:44:29,077 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:44:29,077 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 48 transitions. [2022-04-28 05:44:29,078 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:44:29,078 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 48 transitions. [2022-04-28 05:44:29,118 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:44:29,118 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 48 transitions. [2022-04-28 05:44:29,121 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-28 05:44:29,121 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:44:29,125 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 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-28 05:44:29,143 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-28 05:44:29,344 WARN L477 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-28 05:44:29,344 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:44:29,345 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:44:29,345 INFO L85 PathProgramCache]: Analyzing trace with hash 561616070, now seen corresponding path program 1 times [2022-04-28 05:44:29,345 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:44:29,345 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1915176510] [2022-04-28 05:44:29,345 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:44:29,345 INFO L85 PathProgramCache]: Analyzing trace with hash 561616070, now seen corresponding path program 2 times [2022-04-28 05:44:29,346 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:44:29,346 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1659834303] [2022-04-28 05:44:29,346 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:44:29,346 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:44:29,373 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:44:29,373 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [508692543] [2022-04-28 05:44:29,373 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:44:29,373 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:44:29,373 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:44:29,384 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-28 05:44:29,384 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-28 05:44:29,419 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:44:29,419 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:44:29,420 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 05:44:29,427 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:29,428 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:44:29,533 INFO L272 TraceCheckUtils]: 0: Hoare triple {901#true} call ULTIMATE.init(); {901#true} is VALID [2022-04-28 05:44:29,533 INFO L290 TraceCheckUtils]: 1: Hoare triple {901#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); {901#true} is VALID [2022-04-28 05:44:29,534 INFO L290 TraceCheckUtils]: 2: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:44:29,534 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {901#true} {901#true} #103#return; {901#true} is VALID [2022-04-28 05:44:29,534 INFO L272 TraceCheckUtils]: 4: Hoare triple {901#true} call #t~ret6 := main(); {901#true} is VALID [2022-04-28 05:44:29,534 INFO L290 TraceCheckUtils]: 5: Hoare triple {901#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {901#true} is VALID [2022-04-28 05:44:29,534 INFO L272 TraceCheckUtils]: 6: Hoare triple {901#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {901#true} is VALID [2022-04-28 05:44:29,534 INFO L290 TraceCheckUtils]: 7: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:44:29,535 INFO L290 TraceCheckUtils]: 8: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:44:29,535 INFO L290 TraceCheckUtils]: 9: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:44:29,535 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {901#true} {901#true} #79#return; {901#true} is VALID [2022-04-28 05:44:29,535 INFO L290 TraceCheckUtils]: 11: Hoare triple {901#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {901#true} is VALID [2022-04-28 05:44:29,535 INFO L272 TraceCheckUtils]: 12: Hoare triple {901#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {901#true} is VALID [2022-04-28 05:44:29,535 INFO L290 TraceCheckUtils]: 13: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:44:29,536 INFO L290 TraceCheckUtils]: 14: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:44:29,536 INFO L290 TraceCheckUtils]: 15: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:44:29,537 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {901#true} {901#true} #81#return; {901#true} is VALID [2022-04-28 05:44:29,537 INFO L272 TraceCheckUtils]: 17: Hoare triple {901#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {901#true} is VALID [2022-04-28 05:44:29,537 INFO L290 TraceCheckUtils]: 18: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:44:29,537 INFO L290 TraceCheckUtils]: 19: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:44:29,537 INFO L290 TraceCheckUtils]: 20: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:44:29,537 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {901#true} {901#true} #83#return; {901#true} is VALID [2022-04-28 05:44:29,538 INFO L272 TraceCheckUtils]: 22: Hoare triple {901#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {901#true} is VALID [2022-04-28 05:44:29,538 INFO L290 TraceCheckUtils]: 23: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:44:29,538 INFO L290 TraceCheckUtils]: 24: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:44:29,538 INFO L290 TraceCheckUtils]: 25: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:44:29,538 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {901#true} {901#true} #85#return; {901#true} is VALID [2022-04-28 05:44:29,538 INFO L290 TraceCheckUtils]: 27: Hoare triple {901#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {901#true} is VALID [2022-04-28 05:44:29,539 INFO L272 TraceCheckUtils]: 28: Hoare triple {901#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {901#true} is VALID [2022-04-28 05:44:29,542 INFO L290 TraceCheckUtils]: 29: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:44:29,543 INFO L290 TraceCheckUtils]: 30: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:44:29,543 INFO L290 TraceCheckUtils]: 31: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:44:29,543 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {901#true} {901#true} #87#return; {901#true} is VALID [2022-04-28 05:44:29,543 INFO L272 TraceCheckUtils]: 33: Hoare triple {901#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {901#true} is VALID [2022-04-28 05:44:29,543 INFO L290 TraceCheckUtils]: 34: Hoare triple {901#true} ~cond := #in~cond; {901#true} is VALID [2022-04-28 05:44:29,544 INFO L290 TraceCheckUtils]: 35: Hoare triple {901#true} assume !(0 == ~cond); {901#true} is VALID [2022-04-28 05:44:29,544 INFO L290 TraceCheckUtils]: 36: Hoare triple {901#true} assume true; {901#true} is VALID [2022-04-28 05:44:29,544 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {901#true} {901#true} #89#return; {901#true} is VALID [2022-04-28 05:44:29,544 INFO L290 TraceCheckUtils]: 38: Hoare triple {901#true} assume !false; {901#true} is VALID [2022-04-28 05:44:29,545 INFO L290 TraceCheckUtils]: 39: Hoare triple {901#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1023#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:44:29,545 INFO L290 TraceCheckUtils]: 40: Hoare triple {1023#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} assume !false; {1023#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:44:29,546 INFO L272 TraceCheckUtils]: 41: Hoare triple {1023#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {1030#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:44:29,546 INFO L290 TraceCheckUtils]: 42: Hoare triple {1030#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1034#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:44:29,546 INFO L290 TraceCheckUtils]: 43: Hoare triple {1034#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {902#false} is VALID [2022-04-28 05:44:29,546 INFO L290 TraceCheckUtils]: 44: Hoare triple {902#false} assume !false; {902#false} is VALID [2022-04-28 05:44:29,547 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-28 05:44:29,547 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:44:29,547 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:44:29,547 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1659834303] [2022-04-28 05:44:29,548 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:44:29,548 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [508692543] [2022-04-28 05:44:29,548 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [508692543] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:44:29,548 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:44:29,548 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:44:29,548 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:44:29,548 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1915176510] [2022-04-28 05:44:29,548 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1915176510] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:44:29,548 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:44:29,548 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:44:29,548 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [336085079] [2022-04-28 05:44:29,548 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:44:29,550 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) Word has length 45 [2022-04-28 05:44:29,552 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:44:29,552 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 05:44:29,570 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:44:29,570 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:44:29,570 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:44:29,570 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:44:29,570 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:44:29,570 INFO L87 Difference]: Start difference. First operand 37 states and 48 transitions. Second operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 05:44:29,742 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:29,742 INFO L93 Difference]: Finished difference Result 50 states and 65 transitions. [2022-04-28 05:44:29,742 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:44:29,742 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) Word has length 45 [2022-04-28 05:44:29,742 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:44:29,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 05:44:29,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-28 05:44:29,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 05:44:29,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 63 transitions. [2022-04-28 05:44:29,745 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 63 transitions. [2022-04-28 05:44:29,795 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-28 05:44:29,796 INFO L225 Difference]: With dead ends: 50 [2022-04-28 05:44:29,796 INFO L226 Difference]: Without dead ends: 48 [2022-04-28 05:44:29,796 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 41 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-28 05:44:29,797 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 6 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 154 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:44:29,797 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 154 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:44:29,798 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-28 05:44:29,818 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 43. [2022-04-28 05:44:29,818 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:44:29,818 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:44:29,819 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:44:29,819 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:44:29,821 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:29,821 INFO L93 Difference]: Finished difference Result 48 states and 63 transitions. [2022-04-28 05:44:29,821 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 63 transitions. [2022-04-28 05:44:29,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:44:29,821 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:44:29,821 INFO L74 IsIncluded]: Start isIncluded. First operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 48 states. [2022-04-28 05:44:29,822 INFO L87 Difference]: Start difference. First operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 48 states. [2022-04-28 05:44:29,823 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:29,823 INFO L93 Difference]: Finished difference Result 48 states and 63 transitions. [2022-04-28 05:44:29,823 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 63 transitions. [2022-04-28 05:44:29,824 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:44:29,824 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:44:29,824 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:44:29,824 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:44:29,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 25 states have internal predecessors, (26), 15 states have call successors, (15), 5 states have call predecessors, (15), 4 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 05:44:29,825 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 54 transitions. [2022-04-28 05:44:29,825 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 54 transitions. Word has length 45 [2022-04-28 05:44:29,825 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:44:29,825 INFO L495 AbstractCegarLoop]: Abstraction has 43 states and 54 transitions. [2022-04-28 05:44:29,826 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-28 05:44:29,826 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 43 states and 54 transitions. [2022-04-28 05:44:29,868 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-28 05:44:29,868 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-28 05:44:29,869 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-28 05:44:29,869 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:44:29,869 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 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-28 05:44:29,888 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 05:44:30,083 WARN L477 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-28 05:44:30,084 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:44:30,084 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:44:30,084 INFO L85 PathProgramCache]: Analyzing trace with hash -680064098, now seen corresponding path program 1 times [2022-04-28 05:44:30,084 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:44:30,084 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [540332729] [2022-04-28 05:44:30,085 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:44:30,085 INFO L85 PathProgramCache]: Analyzing trace with hash -680064098, now seen corresponding path program 2 times [2022-04-28 05:44:30,085 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:44:30,085 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [879814146] [2022-04-28 05:44:30,085 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:44:30,085 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:44:30,101 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:44:30,101 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [459263181] [2022-04-28 05:44:30,101 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:44:30,101 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:44:30,101 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:44:30,112 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-28 05:44:30,113 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-28 05:44:30,149 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:44:30,149 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:44:30,150 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:44:30,161 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:30,162 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:44:34,236 INFO L272 TraceCheckUtils]: 0: Hoare triple {1324#true} call ULTIMATE.init(); {1324#true} is VALID [2022-04-28 05:44:34,237 INFO L290 TraceCheckUtils]: 1: Hoare triple {1324#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); {1324#true} is VALID [2022-04-28 05:44:34,237 INFO L290 TraceCheckUtils]: 2: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:44:34,237 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1324#true} {1324#true} #103#return; {1324#true} is VALID [2022-04-28 05:44:34,237 INFO L272 TraceCheckUtils]: 4: Hoare triple {1324#true} call #t~ret6 := main(); {1324#true} is VALID [2022-04-28 05:44:34,237 INFO L290 TraceCheckUtils]: 5: Hoare triple {1324#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1324#true} is VALID [2022-04-28 05:44:34,237 INFO L272 TraceCheckUtils]: 6: Hoare triple {1324#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:44:34,237 INFO L290 TraceCheckUtils]: 7: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:44:34,237 INFO L290 TraceCheckUtils]: 8: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:44:34,237 INFO L290 TraceCheckUtils]: 9: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:44:34,237 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1324#true} {1324#true} #79#return; {1324#true} is VALID [2022-04-28 05:44:34,238 INFO L290 TraceCheckUtils]: 11: Hoare triple {1324#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1324#true} is VALID [2022-04-28 05:44:34,238 INFO L272 TraceCheckUtils]: 12: Hoare triple {1324#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:44:34,238 INFO L290 TraceCheckUtils]: 13: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:44:34,238 INFO L290 TraceCheckUtils]: 14: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:44:34,238 INFO L290 TraceCheckUtils]: 15: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:44:34,238 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1324#true} {1324#true} #81#return; {1324#true} is VALID [2022-04-28 05:44:34,238 INFO L272 TraceCheckUtils]: 17: Hoare triple {1324#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:44:34,238 INFO L290 TraceCheckUtils]: 18: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:44:34,238 INFO L290 TraceCheckUtils]: 19: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:44:34,238 INFO L290 TraceCheckUtils]: 20: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:44:34,239 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1324#true} {1324#true} #83#return; {1324#true} is VALID [2022-04-28 05:44:34,239 INFO L272 TraceCheckUtils]: 22: Hoare triple {1324#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:44:34,239 INFO L290 TraceCheckUtils]: 23: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:44:34,239 INFO L290 TraceCheckUtils]: 24: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:44:34,239 INFO L290 TraceCheckUtils]: 25: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:44:34,239 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1324#true} {1324#true} #85#return; {1324#true} is VALID [2022-04-28 05:44:34,240 INFO L290 TraceCheckUtils]: 27: Hoare triple {1324#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:44:34,241 INFO L272 TraceCheckUtils]: 28: Hoare triple {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:44:34,241 INFO L290 TraceCheckUtils]: 29: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:44:34,241 INFO L290 TraceCheckUtils]: 30: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:44:34,241 INFO L290 TraceCheckUtils]: 31: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:44:34,242 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1324#true} {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:44:34,242 INFO L272 TraceCheckUtils]: 33: Hoare triple {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1324#true} is VALID [2022-04-28 05:44:34,242 INFO L290 TraceCheckUtils]: 34: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:44:34,242 INFO L290 TraceCheckUtils]: 35: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:44:34,242 INFO L290 TraceCheckUtils]: 36: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:44:34,243 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1324#true} {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:44:34,243 INFO L290 TraceCheckUtils]: 38: Hoare triple {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:44:34,243 INFO L290 TraceCheckUtils]: 39: Hoare triple {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:44:34,244 INFO L290 TraceCheckUtils]: 40: Hoare triple {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:44:34,244 INFO L272 TraceCheckUtils]: 41: Hoare triple {1410#(and (= main_~r~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)); {1324#true} is VALID [2022-04-28 05:44:34,244 INFO L290 TraceCheckUtils]: 42: Hoare triple {1324#true} ~cond := #in~cond; {1324#true} is VALID [2022-04-28 05:44:34,244 INFO L290 TraceCheckUtils]: 43: Hoare triple {1324#true} assume !(0 == ~cond); {1324#true} is VALID [2022-04-28 05:44:34,244 INFO L290 TraceCheckUtils]: 44: Hoare triple {1324#true} assume true; {1324#true} is VALID [2022-04-28 05:44:34,245 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1324#true} {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {1410#(and (= main_~r~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:44:34,246 INFO L272 TraceCheckUtils]: 46: Hoare triple {1410#(and (= main_~r~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)); {1468#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:44:34,246 INFO L290 TraceCheckUtils]: 47: Hoare triple {1468#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1472#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:44:34,248 INFO L290 TraceCheckUtils]: 48: Hoare triple {1472#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1325#false} is VALID [2022-04-28 05:44:34,248 INFO L290 TraceCheckUtils]: 49: Hoare triple {1325#false} assume !false; {1325#false} is VALID [2022-04-28 05:44:34,248 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-28 05:44:34,248 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:44:34,249 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:44:34,249 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [879814146] [2022-04-28 05:44:34,249 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:44:34,249 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [459263181] [2022-04-28 05:44:34,249 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [459263181] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:44:34,249 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:44:34,249 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:44:34,249 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:44:34,249 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [540332729] [2022-04-28 05:44:34,249 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [540332729] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:44:34,249 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:44:34,249 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:44:34,250 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [22050205] [2022-04-28 05:44:34,250 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:44:34,250 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 50 [2022-04-28 05:44:34,250 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:44:34,250 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:44:34,279 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-28 05:44:34,279 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:44:34,279 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:44:34,280 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:44:34,280 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:44:34,280 INFO L87 Difference]: Start difference. First operand 43 states and 54 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:44:34,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:34,455 INFO L93 Difference]: Finished difference Result 58 states and 74 transitions. [2022-04-28 05:44:34,455 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:44:34,456 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 50 [2022-04-28 05:44:34,456 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:44:34,456 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:44:34,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:44:34,457 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:44:34,458 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:44:34,458 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-28 05:44:34,512 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:44:34,513 INFO L225 Difference]: With dead ends: 58 [2022-04-28 05:44:34,513 INFO L226 Difference]: Without dead ends: 56 [2022-04-28 05:44:34,514 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 50 GetRequests, 46 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-28 05:44:34,514 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 7 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 161 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:44:34,515 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 161 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:44:34,515 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-28 05:44:34,550 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 55. [2022-04-28 05:44:34,550 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:44:34,550 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:44:34,550 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:44:34,551 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:44:34,552 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:34,552 INFO L93 Difference]: Finished difference Result 56 states and 72 transitions. [2022-04-28 05:44:34,553 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 72 transitions. [2022-04-28 05:44:34,553 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:44:34,553 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:44:34,553 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 56 states. [2022-04-28 05:44:34,553 INFO L87 Difference]: Start difference. First operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 56 states. [2022-04-28 05:44:34,555 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:34,555 INFO L93 Difference]: Finished difference Result 56 states and 72 transitions. [2022-04-28 05:44:34,555 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 72 transitions. [2022-04-28 05:44:34,555 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:44:34,555 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:44:34,555 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:44:34,555 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:44:34,556 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 32 states have internal predecessors, (33), 20 states have call successors, (20), 6 states have call predecessors, (20), 5 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:44:34,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 71 transitions. [2022-04-28 05:44:34,579 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 71 transitions. Word has length 50 [2022-04-28 05:44:34,580 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:44:34,580 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 71 transitions. [2022-04-28 05:44:34,580 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 05:44:34,580 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 71 transitions. [2022-04-28 05:44:34,646 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:44:34,646 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 71 transitions. [2022-04-28 05:44:34,646 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 05:44:34,646 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:44:34,647 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:44:34,665 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-28 05:44:34,865 WARN L477 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-28 05:44:34,865 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:44:34,866 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:44:34,866 INFO L85 PathProgramCache]: Analyzing trace with hash 606548870, now seen corresponding path program 1 times [2022-04-28 05:44:34,866 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:44:34,866 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1709084248] [2022-04-28 05:44:34,866 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:44:34,866 INFO L85 PathProgramCache]: Analyzing trace with hash 606548870, now seen corresponding path program 2 times [2022-04-28 05:44:34,866 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:44:34,866 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [967447930] [2022-04-28 05:44:34,867 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:44:34,867 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:44:34,878 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:44:34,878 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [152027038] [2022-04-28 05:44:34,878 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:44:34,878 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:44:34,878 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:44:34,879 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-28 05:44:34,880 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-28 05:44:34,918 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:44:34,918 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:44:34,919 INFO L263 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:44:34,932 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:34,933 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:44:38,464 INFO L272 TraceCheckUtils]: 0: Hoare triple {1818#true} call ULTIMATE.init(); {1818#true} is VALID [2022-04-28 05:44:38,464 INFO L290 TraceCheckUtils]: 1: Hoare triple {1818#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); {1818#true} is VALID [2022-04-28 05:44:38,464 INFO L290 TraceCheckUtils]: 2: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-28 05:44:38,464 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1818#true} {1818#true} #103#return; {1818#true} is VALID [2022-04-28 05:44:38,464 INFO L272 TraceCheckUtils]: 4: Hoare triple {1818#true} call #t~ret6 := main(); {1818#true} is VALID [2022-04-28 05:44:38,465 INFO L290 TraceCheckUtils]: 5: Hoare triple {1818#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1818#true} is VALID [2022-04-28 05:44:38,465 INFO L272 TraceCheckUtils]: 6: Hoare triple {1818#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1818#true} is VALID [2022-04-28 05:44:38,465 INFO L290 TraceCheckUtils]: 7: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-28 05:44:38,465 INFO L290 TraceCheckUtils]: 8: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-28 05:44:38,465 INFO L290 TraceCheckUtils]: 9: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-28 05:44:38,465 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1818#true} {1818#true} #79#return; {1818#true} is VALID [2022-04-28 05:44:38,465 INFO L290 TraceCheckUtils]: 11: Hoare triple {1818#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1818#true} is VALID [2022-04-28 05:44:38,465 INFO L272 TraceCheckUtils]: 12: Hoare triple {1818#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1818#true} is VALID [2022-04-28 05:44:38,466 INFO L290 TraceCheckUtils]: 13: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-28 05:44:38,466 INFO L290 TraceCheckUtils]: 14: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-28 05:44:38,466 INFO L290 TraceCheckUtils]: 15: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-28 05:44:38,466 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1818#true} {1818#true} #81#return; {1818#true} is VALID [2022-04-28 05:44:38,466 INFO L272 TraceCheckUtils]: 17: Hoare triple {1818#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1818#true} is VALID [2022-04-28 05:44:38,466 INFO L290 TraceCheckUtils]: 18: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-28 05:44:38,466 INFO L290 TraceCheckUtils]: 19: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-28 05:44:38,466 INFO L290 TraceCheckUtils]: 20: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-28 05:44:38,466 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1818#true} {1818#true} #83#return; {1818#true} is VALID [2022-04-28 05:44:38,466 INFO L272 TraceCheckUtils]: 22: Hoare triple {1818#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1818#true} is VALID [2022-04-28 05:44:38,467 INFO L290 TraceCheckUtils]: 23: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-28 05:44:38,467 INFO L290 TraceCheckUtils]: 24: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-28 05:44:38,467 INFO L290 TraceCheckUtils]: 25: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-28 05:44:38,467 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1818#true} {1818#true} #85#return; {1818#true} is VALID [2022-04-28 05:44:38,471 INFO L290 TraceCheckUtils]: 27: Hoare triple {1818#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:44:38,472 INFO L272 TraceCheckUtils]: 28: Hoare triple {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1818#true} is VALID [2022-04-28 05:44:38,472 INFO L290 TraceCheckUtils]: 29: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-28 05:44:38,472 INFO L290 TraceCheckUtils]: 30: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-28 05:44:38,472 INFO L290 TraceCheckUtils]: 31: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-28 05:44:38,473 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1818#true} {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:44:38,473 INFO L272 TraceCheckUtils]: 33: Hoare triple {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1818#true} is VALID [2022-04-28 05:44:38,473 INFO L290 TraceCheckUtils]: 34: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-28 05:44:38,473 INFO L290 TraceCheckUtils]: 35: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-28 05:44:38,473 INFO L290 TraceCheckUtils]: 36: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-28 05:44:38,474 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1818#true} {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:44:38,474 INFO L290 TraceCheckUtils]: 38: Hoare triple {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:44:38,474 INFO L290 TraceCheckUtils]: 39: Hoare triple {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:44:38,475 INFO L290 TraceCheckUtils]: 40: Hoare triple {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:44:38,475 INFO L272 TraceCheckUtils]: 41: Hoare triple {1904#(and (= 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)); {1818#true} is VALID [2022-04-28 05:44:38,475 INFO L290 TraceCheckUtils]: 42: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-28 05:44:38,475 INFO L290 TraceCheckUtils]: 43: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-28 05:44:38,475 INFO L290 TraceCheckUtils]: 44: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-28 05:44:38,476 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1818#true} {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #91#return; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:44:38,476 INFO L272 TraceCheckUtils]: 46: Hoare triple {1904#(and (= 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)); {1818#true} is VALID [2022-04-28 05:44:38,476 INFO L290 TraceCheckUtils]: 47: Hoare triple {1818#true} ~cond := #in~cond; {1818#true} is VALID [2022-04-28 05:44:38,476 INFO L290 TraceCheckUtils]: 48: Hoare triple {1818#true} assume !(0 == ~cond); {1818#true} is VALID [2022-04-28 05:44:38,476 INFO L290 TraceCheckUtils]: 49: Hoare triple {1818#true} assume true; {1818#true} is VALID [2022-04-28 05:44:38,477 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1818#true} {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #93#return; {1904#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:44:38,478 INFO L272 TraceCheckUtils]: 51: Hoare triple {1904#(and (= 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)); {1977#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:44:38,478 INFO L290 TraceCheckUtils]: 52: Hoare triple {1977#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1981#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:44:38,479 INFO L290 TraceCheckUtils]: 53: Hoare triple {1981#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1819#false} is VALID [2022-04-28 05:44:38,479 INFO L290 TraceCheckUtils]: 54: Hoare triple {1819#false} assume !false; {1819#false} is VALID [2022-04-28 05:44:38,479 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-28 05:44:38,479 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:44:38,479 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:44:38,479 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [967447930] [2022-04-28 05:44:38,479 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:44:38,479 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [152027038] [2022-04-28 05:44:38,480 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [152027038] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:44:38,480 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:44:38,480 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:44:38,480 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:44:38,480 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1709084248] [2022-04-28 05:44:38,480 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1709084248] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:44:38,480 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:44:38,480 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:44:38,480 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [857770826] [2022-04-28 05:44:38,480 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:44:38,481 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 55 [2022-04-28 05:44:38,481 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:44:38,481 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:44:38,508 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:44:38,508 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:44:38,508 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:44:38,509 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:44:38,509 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:44:38,509 INFO L87 Difference]: Start difference. First operand 55 states and 71 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:44:38,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:38,732 INFO L93 Difference]: Finished difference Result 62 states and 77 transitions. [2022-04-28 05:44:38,732 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:44:38,732 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 55 [2022-04-28 05:44:38,733 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:44:38,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:44:38,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:44:38,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:44:38,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-28 05:44:38,735 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-28 05:44:38,782 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:44:38,783 INFO L225 Difference]: With dead ends: 62 [2022-04-28 05:44:38,783 INFO L226 Difference]: Without dead ends: 60 [2022-04-28 05:44:38,783 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 51 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-28 05:44:38,784 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 7 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 151 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:44:38,784 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 151 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:44:38,784 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-28 05:44:38,823 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2022-04-28 05:44:38,824 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:44:38,824 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:44:38,824 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:44:38,824 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:44:38,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:38,826 INFO L93 Difference]: Finished difference Result 60 states and 75 transitions. [2022-04-28 05:44:38,826 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 75 transitions. [2022-04-28 05:44:38,826 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:44:38,826 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:44:38,827 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 60 states. [2022-04-28 05:44:38,827 INFO L87 Difference]: Start difference. First operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 60 states. [2022-04-28 05:44:38,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:44:38,829 INFO L93 Difference]: Finished difference Result 60 states and 75 transitions. [2022-04-28 05:44:38,829 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 75 transitions. [2022-04-28 05:44:38,829 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:44:38,829 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:44:38,829 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:44:38,829 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:44:38,829 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 32 states have (on average 1.125) internal successors, (36), 35 states have internal predecessors, (36), 20 states have call successors, (20), 7 states have call predecessors, (20), 6 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:44:38,831 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 74 transitions. [2022-04-28 05:44:38,831 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 74 transitions. Word has length 55 [2022-04-28 05:44:38,831 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:44:38,831 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 74 transitions. [2022-04-28 05:44:38,831 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:44:38,831 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 74 transitions. [2022-04-28 05:44:38,909 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:44:38,910 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 74 transitions. [2022-04-28 05:44:38,910 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2022-04-28 05:44:38,910 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:44:38,910 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:44:38,926 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-28 05:44:39,123 WARN L477 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-28 05:44:39,123 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:44:39,124 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:44:39,124 INFO L85 PathProgramCache]: Analyzing trace with hash 1584976990, now seen corresponding path program 1 times [2022-04-28 05:44:39,124 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:44:39,124 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1288805909] [2022-04-28 05:44:39,124 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:44:39,124 INFO L85 PathProgramCache]: Analyzing trace with hash 1584976990, now seen corresponding path program 2 times [2022-04-28 05:44:39,124 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:44:39,124 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [34134977] [2022-04-28 05:44:39,125 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:44:39,125 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:44:39,135 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:44:39,136 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [595252532] [2022-04-28 05:44:39,136 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:44:39,136 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:44:39,136 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:44:39,137 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-28 05:44:39,138 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-28 05:44:39,176 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:44:39,176 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:44:39,177 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 05:44:39,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:44:39,188 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:44:45,094 INFO L272 TraceCheckUtils]: 0: Hoare triple {2351#true} call ULTIMATE.init(); {2351#true} is VALID [2022-04-28 05:44:45,095 INFO L290 TraceCheckUtils]: 1: Hoare triple {2351#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); {2351#true} is VALID [2022-04-28 05:44:45,095 INFO L290 TraceCheckUtils]: 2: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-28 05:44:45,095 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2351#true} {2351#true} #103#return; {2351#true} is VALID [2022-04-28 05:44:45,095 INFO L272 TraceCheckUtils]: 4: Hoare triple {2351#true} call #t~ret6 := main(); {2351#true} is VALID [2022-04-28 05:44:45,095 INFO L290 TraceCheckUtils]: 5: Hoare triple {2351#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2351#true} is VALID [2022-04-28 05:44:45,095 INFO L272 TraceCheckUtils]: 6: Hoare triple {2351#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2351#true} is VALID [2022-04-28 05:44:45,095 INFO L290 TraceCheckUtils]: 7: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-28 05:44:45,095 INFO L290 TraceCheckUtils]: 8: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-28 05:44:45,095 INFO L290 TraceCheckUtils]: 9: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-28 05:44:45,096 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2351#true} {2351#true} #79#return; {2351#true} is VALID [2022-04-28 05:44:45,096 INFO L290 TraceCheckUtils]: 11: Hoare triple {2351#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2351#true} is VALID [2022-04-28 05:44:45,096 INFO L272 TraceCheckUtils]: 12: Hoare triple {2351#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2351#true} is VALID [2022-04-28 05:44:45,096 INFO L290 TraceCheckUtils]: 13: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-28 05:44:45,096 INFO L290 TraceCheckUtils]: 14: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-28 05:44:45,096 INFO L290 TraceCheckUtils]: 15: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-28 05:44:45,096 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2351#true} {2351#true} #81#return; {2351#true} is VALID [2022-04-28 05:44:45,097 INFO L272 TraceCheckUtils]: 17: Hoare triple {2351#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2351#true} is VALID [2022-04-28 05:44:45,097 INFO L290 TraceCheckUtils]: 18: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-28 05:44:45,097 INFO L290 TraceCheckUtils]: 19: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-28 05:44:45,097 INFO L290 TraceCheckUtils]: 20: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-28 05:44:45,097 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2351#true} {2351#true} #83#return; {2351#true} is VALID [2022-04-28 05:44:45,101 INFO L272 TraceCheckUtils]: 22: Hoare triple {2351#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2351#true} is VALID [2022-04-28 05:44:45,101 INFO L290 TraceCheckUtils]: 23: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-28 05:44:45,101 INFO L290 TraceCheckUtils]: 24: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-28 05:44:45,102 INFO L290 TraceCheckUtils]: 25: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-28 05:44:45,102 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2351#true} {2351#true} #85#return; {2351#true} is VALID [2022-04-28 05:44:45,102 INFO L290 TraceCheckUtils]: 27: Hoare triple {2351#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 05:44:45,102 INFO L272 TraceCheckUtils]: 28: Hoare triple {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2351#true} is VALID [2022-04-28 05:44:45,102 INFO L290 TraceCheckUtils]: 29: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-28 05:44:45,103 INFO L290 TraceCheckUtils]: 30: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-28 05:44:45,103 INFO L290 TraceCheckUtils]: 31: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-28 05:44:45,103 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2351#true} {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #87#return; {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 05:44:45,104 INFO L272 TraceCheckUtils]: 33: Hoare triple {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2351#true} is VALID [2022-04-28 05:44:45,104 INFO L290 TraceCheckUtils]: 34: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-28 05:44:45,104 INFO L290 TraceCheckUtils]: 35: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-28 05:44:45,104 INFO L290 TraceCheckUtils]: 36: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-28 05:44:45,104 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2351#true} {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #89#return; {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 05:44:45,105 INFO L290 TraceCheckUtils]: 38: Hoare triple {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !false; {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 05:44:45,105 INFO L290 TraceCheckUtils]: 39: Hoare triple {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 05:44:45,105 INFO L290 TraceCheckUtils]: 40: Hoare triple {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !false; {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 05:44:45,106 INFO L272 TraceCheckUtils]: 41: Hoare triple {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2351#true} is VALID [2022-04-28 05:44:45,106 INFO L290 TraceCheckUtils]: 42: Hoare triple {2351#true} ~cond := #in~cond; {2351#true} is VALID [2022-04-28 05:44:45,106 INFO L290 TraceCheckUtils]: 43: Hoare triple {2351#true} assume !(0 == ~cond); {2351#true} is VALID [2022-04-28 05:44:45,106 INFO L290 TraceCheckUtils]: 44: Hoare triple {2351#true} assume true; {2351#true} is VALID [2022-04-28 05:44:45,107 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2351#true} {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #91#return; {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 05:44:45,107 INFO L272 TraceCheckUtils]: 46: Hoare triple {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~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)); {2351#true} is VALID [2022-04-28 05:44:45,107 INFO L290 TraceCheckUtils]: 47: Hoare triple {2351#true} ~cond := #in~cond; {2498#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:44:45,108 INFO L290 TraceCheckUtils]: 48: Hoare triple {2498#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:44:45,108 INFO L290 TraceCheckUtils]: 49: Hoare triple {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:44:45,109 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #93#return; {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 05:44:45,109 INFO L272 TraceCheckUtils]: 51: Hoare triple {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~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)); {2351#true} is VALID [2022-04-28 05:44:45,109 INFO L290 TraceCheckUtils]: 52: Hoare triple {2351#true} ~cond := #in~cond; {2498#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:44:45,110 INFO L290 TraceCheckUtils]: 53: Hoare triple {2498#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:44:45,110 INFO L290 TraceCheckUtils]: 54: Hoare triple {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:44:45,111 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2502#(not (= |__VERIFIER_assert_#in~cond| 0))} {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #95#return; {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 05:44:45,112 INFO L272 TraceCheckUtils]: 56: Hoare triple {2437#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {2527#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:44:45,112 INFO L290 TraceCheckUtils]: 57: Hoare triple {2527#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2531#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:44:45,113 INFO L290 TraceCheckUtils]: 58: Hoare triple {2531#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2352#false} is VALID [2022-04-28 05:44:45,113 INFO L290 TraceCheckUtils]: 59: Hoare triple {2352#false} assume !false; {2352#false} is VALID [2022-04-28 05:44:45,113 INFO L134 CoverageAnalysis]: Checked inductivity of 78 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2022-04-28 05:44:45,113 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:45:33,075 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:45:33,076 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [34134977] [2022-04-28 05:45:33,076 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:45:33,076 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [595252532] [2022-04-28 05:45:33,076 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [595252532] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 05:45:33,076 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:45:33,076 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2022-04-28 05:45:33,076 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:45:33,077 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1288805909] [2022-04-28 05:45:33,077 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1288805909] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:45:33,077 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:45:33,077 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 05:45:33,077 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1146843371] [2022-04-28 05:45:33,077 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:45:33,077 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 60 [2022-04-28 05:45:33,078 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:45:33,078 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-28 05:45:33,123 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:45:33,123 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 05:45:33,123 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:45:33,123 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 05:45:33,123 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:45:33,124 INFO L87 Difference]: Start difference. First operand 59 states and 74 transitions. Second operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-28 05:45:33,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:33,488 INFO L93 Difference]: Finished difference Result 66 states and 80 transitions. [2022-04-28 05:45:33,488 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 05:45:33,489 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 60 [2022-04-28 05:45:33,489 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:45:33,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-28 05:45:33,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-28 05:45:33,490 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-28 05:45:33,491 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-28 05:45:33,491 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 65 transitions. [2022-04-28 05:45:33,541 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:45:33,542 INFO L225 Difference]: With dead ends: 66 [2022-04-28 05:45:33,542 INFO L226 Difference]: Without dead ends: 64 [2022-04-28 05:45:33,542 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 56 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:45:33,543 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 11 mSDsluCounter, 128 mSDsCounter, 0 mSdLazyCounter, 128 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 164 SdHoareTripleChecker+Invalid, 130 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 128 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:45:33,543 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 164 Invalid, 130 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 128 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:45:33,543 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2022-04-28 05:45:33,587 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 63. [2022-04-28 05:45:33,587 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:45:33,588 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:45:33,589 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:45:33,589 INFO L87 Difference]: Start difference. First operand 64 states. Second operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:45:33,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:33,591 INFO L93 Difference]: Finished difference Result 64 states and 78 transitions. [2022-04-28 05:45:33,591 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 78 transitions. [2022-04-28 05:45:33,591 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:45:33,591 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:45:33,591 INFO L74 IsIncluded]: Start isIncluded. First operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 64 states. [2022-04-28 05:45:33,591 INFO L87 Difference]: Start difference. First operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) Second operand 64 states. [2022-04-28 05:45:33,593 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:33,593 INFO L93 Difference]: Finished difference Result 64 states and 78 transitions. [2022-04-28 05:45:33,593 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 78 transitions. [2022-04-28 05:45:33,594 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:45:33,594 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:45:33,594 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:45:33,594 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:45:33,594 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 63 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 38 states have internal predecessors, (39), 20 states have call successors, (20), 8 states have call predecessors, (20), 7 states have return successors, (18), 16 states have call predecessors, (18), 18 states have call successors, (18) [2022-04-28 05:45:33,596 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 77 transitions. [2022-04-28 05:45:33,596 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 77 transitions. Word has length 60 [2022-04-28 05:45:33,596 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:45:33,596 INFO L495 AbstractCegarLoop]: Abstraction has 63 states and 77 transitions. [2022-04-28 05:45:33,596 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-28 05:45:33,596 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 63 states and 77 transitions. [2022-04-28 05:45:33,669 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-28 05:45:33,669 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-28 05:45:33,670 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-28 05:45:33,670 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:45:33,670 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 5, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:45:33,686 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-28 05:45:33,886 WARN L477 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-28 05:45:33,886 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:45:33,887 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:45:33,887 INFO L85 PathProgramCache]: Analyzing trace with hash -669670075, now seen corresponding path program 1 times [2022-04-28 05:45:33,887 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:45:33,887 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1098829718] [2022-04-28 05:45:33,887 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:45:33,887 INFO L85 PathProgramCache]: Analyzing trace with hash -669670075, now seen corresponding path program 2 times [2022-04-28 05:45:33,888 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:45:33,888 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1480051976] [2022-04-28 05:45:33,888 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:45:33,888 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:45:33,899 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:45:33,899 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [155565669] [2022-04-28 05:45:33,899 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:45:33,899 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:45:33,899 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:45:33,900 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-28 05:45:33,901 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-28 05:45:33,948 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:45:33,948 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:45:33,949 INFO L263 TraceCheckSpWp]: Trace formula consists of 179 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:45:33,956 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:45:33,959 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:45:34,140 INFO L272 TraceCheckUtils]: 0: Hoare triple {2944#true} call ULTIMATE.init(); {2944#true} is VALID [2022-04-28 05:45:34,140 INFO L290 TraceCheckUtils]: 1: Hoare triple {2944#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); {2944#true} is VALID [2022-04-28 05:45:34,141 INFO L290 TraceCheckUtils]: 2: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,141 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2944#true} {2944#true} #103#return; {2944#true} is VALID [2022-04-28 05:45:34,141 INFO L272 TraceCheckUtils]: 4: Hoare triple {2944#true} call #t~ret6 := main(); {2944#true} is VALID [2022-04-28 05:45:34,141 INFO L290 TraceCheckUtils]: 5: Hoare triple {2944#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2944#true} is VALID [2022-04-28 05:45:34,141 INFO L272 TraceCheckUtils]: 6: Hoare triple {2944#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,141 INFO L290 TraceCheckUtils]: 7: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,141 INFO L290 TraceCheckUtils]: 8: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,147 INFO L290 TraceCheckUtils]: 9: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,147 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2944#true} {2944#true} #79#return; {2944#true} is VALID [2022-04-28 05:45:34,147 INFO L290 TraceCheckUtils]: 11: Hoare triple {2944#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2944#true} is VALID [2022-04-28 05:45:34,147 INFO L272 TraceCheckUtils]: 12: Hoare triple {2944#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,147 INFO L290 TraceCheckUtils]: 13: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,147 INFO L290 TraceCheckUtils]: 14: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L290 TraceCheckUtils]: 15: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2944#true} {2944#true} #81#return; {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L272 TraceCheckUtils]: 17: Hoare triple {2944#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L290 TraceCheckUtils]: 18: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L290 TraceCheckUtils]: 19: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L290 TraceCheckUtils]: 20: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2944#true} {2944#true} #83#return; {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L272 TraceCheckUtils]: 22: Hoare triple {2944#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L290 TraceCheckUtils]: 23: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L290 TraceCheckUtils]: 24: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L290 TraceCheckUtils]: 25: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,148 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2944#true} {2944#true} #85#return; {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L290 TraceCheckUtils]: 27: Hoare triple {2944#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L272 TraceCheckUtils]: 28: Hoare triple {2944#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L290 TraceCheckUtils]: 29: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L290 TraceCheckUtils]: 30: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L290 TraceCheckUtils]: 31: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2944#true} {2944#true} #87#return; {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L272 TraceCheckUtils]: 33: Hoare triple {2944#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L290 TraceCheckUtils]: 34: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L290 TraceCheckUtils]: 35: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L290 TraceCheckUtils]: 36: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2944#true} {2944#true} #89#return; {2944#true} is VALID [2022-04-28 05:45:34,149 INFO L290 TraceCheckUtils]: 38: Hoare triple {2944#true} assume !false; {2944#true} is VALID [2022-04-28 05:45:34,153 INFO L290 TraceCheckUtils]: 39: Hoare triple {2944#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:45:34,153 INFO L290 TraceCheckUtils]: 40: Hoare triple {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !false; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:45:34,153 INFO L272 TraceCheckUtils]: 41: Hoare triple {3066#(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)); {2944#true} is VALID [2022-04-28 05:45:34,153 INFO L290 TraceCheckUtils]: 42: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,153 INFO L290 TraceCheckUtils]: 43: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,153 INFO L290 TraceCheckUtils]: 44: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,154 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2944#true} {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #91#return; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:45:34,154 INFO L272 TraceCheckUtils]: 46: Hoare triple {3066#(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)); {2944#true} is VALID [2022-04-28 05:45:34,154 INFO L290 TraceCheckUtils]: 47: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,154 INFO L290 TraceCheckUtils]: 48: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,154 INFO L290 TraceCheckUtils]: 49: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,155 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2944#true} {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #93#return; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:45:34,155 INFO L272 TraceCheckUtils]: 51: Hoare triple {3066#(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)); {2944#true} is VALID [2022-04-28 05:45:34,155 INFO L290 TraceCheckUtils]: 52: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,155 INFO L290 TraceCheckUtils]: 53: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,156 INFO L290 TraceCheckUtils]: 54: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,156 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2944#true} {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #95#return; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:45:34,156 INFO L272 TraceCheckUtils]: 56: Hoare triple {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,156 INFO L290 TraceCheckUtils]: 57: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,157 INFO L290 TraceCheckUtils]: 58: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,157 INFO L290 TraceCheckUtils]: 59: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,157 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {2944#true} {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #97#return; {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:45:34,158 INFO L290 TraceCheckUtils]: 61: Hoare triple {3066#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {3133#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0))} is VALID [2022-04-28 05:45:34,158 INFO L290 TraceCheckUtils]: 62: Hoare triple {3133#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0))} assume !false; {3133#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0))} is VALID [2022-04-28 05:45:34,160 INFO L272 TraceCheckUtils]: 63: Hoare triple {3133#(and (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:45:34,160 INFO L290 TraceCheckUtils]: 64: Hoare triple {3140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:45:34,160 INFO L290 TraceCheckUtils]: 65: Hoare triple {3144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2945#false} is VALID [2022-04-28 05:45:34,160 INFO L290 TraceCheckUtils]: 66: Hoare triple {2945#false} assume !false; {2945#false} is VALID [2022-04-28 05:45:34,161 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-28 05:45:34,161 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:45:34,374 INFO L290 TraceCheckUtils]: 66: Hoare triple {2945#false} assume !false; {2945#false} is VALID [2022-04-28 05:45:34,375 INFO L290 TraceCheckUtils]: 65: Hoare triple {3144#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2945#false} is VALID [2022-04-28 05:45:34,375 INFO L290 TraceCheckUtils]: 64: Hoare triple {3140#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3144#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:45:34,376 INFO L272 TraceCheckUtils]: 63: Hoare triple {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3140#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:45:34,376 INFO L290 TraceCheckUtils]: 62: Hoare triple {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:45:34,377 INFO L290 TraceCheckUtils]: 61: Hoare triple {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:45:34,378 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {2944#true} {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #97#return; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:45:34,378 INFO L290 TraceCheckUtils]: 59: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,378 INFO L290 TraceCheckUtils]: 58: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,378 INFO L290 TraceCheckUtils]: 57: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,379 INFO L272 TraceCheckUtils]: 56: Hoare triple {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,379 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2944#true} {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #95#return; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:45:34,379 INFO L290 TraceCheckUtils]: 54: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,379 INFO L290 TraceCheckUtils]: 53: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,379 INFO L290 TraceCheckUtils]: 52: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,380 INFO L272 TraceCheckUtils]: 51: Hoare triple {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,380 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2944#true} {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #93#return; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:45:34,380 INFO L290 TraceCheckUtils]: 49: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,380 INFO L290 TraceCheckUtils]: 48: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,381 INFO L290 TraceCheckUtils]: 47: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,381 INFO L272 TraceCheckUtils]: 46: Hoare triple {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,384 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2944#true} {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #91#return; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:45:34,384 INFO L290 TraceCheckUtils]: 44: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,384 INFO L290 TraceCheckUtils]: 43: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,384 INFO L290 TraceCheckUtils]: 42: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,384 INFO L272 TraceCheckUtils]: 41: Hoare triple {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,385 INFO L290 TraceCheckUtils]: 40: Hoare triple {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:45:34,385 INFO L290 TraceCheckUtils]: 39: Hoare triple {2944#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3160#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 05:45:34,385 INFO L290 TraceCheckUtils]: 38: Hoare triple {2944#true} assume !false; {2944#true} is VALID [2022-04-28 05:45:34,385 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2944#true} {2944#true} #89#return; {2944#true} is VALID [2022-04-28 05:45:34,385 INFO L290 TraceCheckUtils]: 36: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,385 INFO L290 TraceCheckUtils]: 35: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,385 INFO L290 TraceCheckUtils]: 34: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L272 TraceCheckUtils]: 33: Hoare triple {2944#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2944#true} {2944#true} #87#return; {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L290 TraceCheckUtils]: 31: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L290 TraceCheckUtils]: 30: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L290 TraceCheckUtils]: 29: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L272 TraceCheckUtils]: 28: Hoare triple {2944#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L290 TraceCheckUtils]: 27: Hoare triple {2944#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2944#true} {2944#true} #85#return; {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L290 TraceCheckUtils]: 25: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L290 TraceCheckUtils]: 24: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L290 TraceCheckUtils]: 23: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L272 TraceCheckUtils]: 22: Hoare triple {2944#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,386 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2944#true} {2944#true} #83#return; {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L290 TraceCheckUtils]: 20: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L290 TraceCheckUtils]: 19: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L290 TraceCheckUtils]: 18: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L272 TraceCheckUtils]: 17: Hoare triple {2944#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2944#true} {2944#true} #81#return; {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L290 TraceCheckUtils]: 15: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L290 TraceCheckUtils]: 14: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L290 TraceCheckUtils]: 13: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L272 TraceCheckUtils]: 12: Hoare triple {2944#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L290 TraceCheckUtils]: 11: Hoare triple {2944#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2944#true} {2944#true} #79#return; {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L290 TraceCheckUtils]: 9: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,387 INFO L290 TraceCheckUtils]: 8: Hoare triple {2944#true} assume !(0 == ~cond); {2944#true} is VALID [2022-04-28 05:45:34,388 INFO L290 TraceCheckUtils]: 7: Hoare triple {2944#true} ~cond := #in~cond; {2944#true} is VALID [2022-04-28 05:45:34,388 INFO L272 TraceCheckUtils]: 6: Hoare triple {2944#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2944#true} is VALID [2022-04-28 05:45:34,388 INFO L290 TraceCheckUtils]: 5: Hoare triple {2944#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2944#true} is VALID [2022-04-28 05:45:34,388 INFO L272 TraceCheckUtils]: 4: Hoare triple {2944#true} call #t~ret6 := main(); {2944#true} is VALID [2022-04-28 05:45:34,388 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2944#true} {2944#true} #103#return; {2944#true} is VALID [2022-04-28 05:45:34,388 INFO L290 TraceCheckUtils]: 2: Hoare triple {2944#true} assume true; {2944#true} is VALID [2022-04-28 05:45:34,388 INFO L290 TraceCheckUtils]: 1: Hoare triple {2944#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); {2944#true} is VALID [2022-04-28 05:45:34,388 INFO L272 TraceCheckUtils]: 0: Hoare triple {2944#true} call ULTIMATE.init(); {2944#true} is VALID [2022-04-28 05:45:34,388 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 86 trivial. 0 not checked. [2022-04-28 05:45:34,388 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:45:34,389 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1480051976] [2022-04-28 05:45:34,389 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:45:34,389 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [155565669] [2022-04-28 05:45:34,389 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [155565669] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:45:34,389 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:45:34,389 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-28 05:45:34,389 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:45:34,389 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1098829718] [2022-04-28 05:45:34,389 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1098829718] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:45:34,389 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:45:34,389 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:45:34,389 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2040814869] [2022-04-28 05:45:34,389 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:45:34,390 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) Word has length 67 [2022-04-28 05:45:34,390 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:45:34,390 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-28 05:45:34,424 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:45:34,424 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:45:34,424 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:45:34,424 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:45:34,424 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 05:45:34,424 INFO L87 Difference]: Start difference. First operand 63 states and 77 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-28 05:45:34,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:34,611 INFO L93 Difference]: Finished difference Result 69 states and 82 transitions. [2022-04-28 05:45:34,611 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:45:34,611 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) Word has length 67 [2022-04-28 05:45:34,611 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:45:34,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-28 05:45:34,612 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-28 05:45:34,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-28 05:45:34,613 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-28 05:45:34,613 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 51 transitions. [2022-04-28 05:45:34,646 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-28 05:45:34,647 INFO L225 Difference]: With dead ends: 69 [2022-04-28 05:45:34,647 INFO L226 Difference]: Without dead ends: 67 [2022-04-28 05:45:34,648 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 126 SyntacticMatches, 2 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:45:34,648 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 6 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 137 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:45:34,648 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 137 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:45:34,649 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-04-28 05:45:34,688 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 59. [2022-04-28 05:45:34,689 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:45:34,689 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 05:45:34,689 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 05:45:34,689 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 05:45:34,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:34,691 INFO L93 Difference]: Finished difference Result 67 states and 80 transitions. [2022-04-28 05:45:34,691 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 80 transitions. [2022-04-28 05:45:34,691 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:45:34,691 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:45:34,691 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 67 states. [2022-04-28 05:45:34,692 INFO L87 Difference]: Start difference. First operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 67 states. [2022-04-28 05:45:34,693 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:34,693 INFO L93 Difference]: Finished difference Result 67 states and 80 transitions. [2022-04-28 05:45:34,693 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 80 transitions. [2022-04-28 05:45:34,693 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:45:34,693 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:45:34,693 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:45:34,694 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:45:34,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 05:45:34,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 71 transitions. [2022-04-28 05:45:34,695 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 71 transitions. Word has length 67 [2022-04-28 05:45:34,695 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:45:34,695 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 71 transitions. [2022-04-28 05:45:34,695 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-04-28 05:45:34,695 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 71 transitions. [2022-04-28 05:45:34,787 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:45:34,788 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 71 transitions. [2022-04-28 05:45:34,788 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:45:34,788 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:45:34,788 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 5, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:45:34,807 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 05:45:34,989 WARN L477 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-28 05:45:34,989 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:45:34,989 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:45:34,989 INFO L85 PathProgramCache]: Analyzing trace with hash -1682830289, now seen corresponding path program 1 times [2022-04-28 05:45:34,989 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:45:34,989 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1014997497] [2022-04-28 05:45:34,990 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:45:34,990 INFO L85 PathProgramCache]: Analyzing trace with hash -1682830289, now seen corresponding path program 2 times [2022-04-28 05:45:34,990 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:45:34,990 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [356763866] [2022-04-28 05:45:34,990 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:45:34,990 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:45:35,000 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:45:35,001 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1431056184] [2022-04-28 05:45:35,001 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:45:35,001 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:45:35,001 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:45:35,002 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-28 05:45:35,003 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-28 05:45:35,042 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:45:35,043 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:45:35,043 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:45:35,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:45:35,054 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:45:35,236 INFO L272 TraceCheckUtils]: 0: Hoare triple {3744#true} call ULTIMATE.init(); {3744#true} is VALID [2022-04-28 05:45:35,236 INFO L290 TraceCheckUtils]: 1: Hoare triple {3744#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); {3744#true} is VALID [2022-04-28 05:45:35,236 INFO L290 TraceCheckUtils]: 2: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,236 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3744#true} {3744#true} #103#return; {3744#true} is VALID [2022-04-28 05:45:35,236 INFO L272 TraceCheckUtils]: 4: Hoare triple {3744#true} call #t~ret6 := main(); {3744#true} is VALID [2022-04-28 05:45:35,236 INFO L290 TraceCheckUtils]: 5: Hoare triple {3744#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3744#true} is VALID [2022-04-28 05:45:35,236 INFO L272 TraceCheckUtils]: 6: Hoare triple {3744#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,236 INFO L290 TraceCheckUtils]: 7: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,236 INFO L290 TraceCheckUtils]: 8: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,237 INFO L290 TraceCheckUtils]: 9: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,237 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3744#true} {3744#true} #79#return; {3744#true} is VALID [2022-04-28 05:45:35,237 INFO L290 TraceCheckUtils]: 11: Hoare triple {3744#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3744#true} is VALID [2022-04-28 05:45:35,237 INFO L272 TraceCheckUtils]: 12: Hoare triple {3744#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,237 INFO L290 TraceCheckUtils]: 13: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,237 INFO L290 TraceCheckUtils]: 14: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,237 INFO L290 TraceCheckUtils]: 15: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,237 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3744#true} {3744#true} #81#return; {3744#true} is VALID [2022-04-28 05:45:35,237 INFO L272 TraceCheckUtils]: 17: Hoare triple {3744#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,246 INFO L290 TraceCheckUtils]: 18: Hoare triple {3744#true} ~cond := #in~cond; {3803#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:45:35,246 INFO L290 TraceCheckUtils]: 19: Hoare triple {3803#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3807#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:45:35,247 INFO L290 TraceCheckUtils]: 20: Hoare triple {3807#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3807#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:45:35,247 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3807#(not (= |assume_abort_if_not_#in~cond| 0))} {3744#true} #83#return; {3814#(<= 1 main_~x~0)} is VALID [2022-04-28 05:45:35,247 INFO L272 TraceCheckUtils]: 22: Hoare triple {3814#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,247 INFO L290 TraceCheckUtils]: 23: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,247 INFO L290 TraceCheckUtils]: 24: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,248 INFO L290 TraceCheckUtils]: 25: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,248 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3744#true} {3814#(<= 1 main_~x~0)} #85#return; {3814#(<= 1 main_~x~0)} is VALID [2022-04-28 05:45:35,248 INFO L290 TraceCheckUtils]: 27: Hoare triple {3814#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3833#(<= 1 main_~a~0)} is VALID [2022-04-28 05:45:35,248 INFO L272 TraceCheckUtils]: 28: Hoare triple {3833#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,249 INFO L290 TraceCheckUtils]: 29: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,249 INFO L290 TraceCheckUtils]: 30: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,249 INFO L290 TraceCheckUtils]: 31: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,249 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3744#true} {3833#(<= 1 main_~a~0)} #87#return; {3833#(<= 1 main_~a~0)} is VALID [2022-04-28 05:45:35,249 INFO L272 TraceCheckUtils]: 33: Hoare triple {3833#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,249 INFO L290 TraceCheckUtils]: 34: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,249 INFO L290 TraceCheckUtils]: 35: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,249 INFO L290 TraceCheckUtils]: 36: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,250 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3744#true} {3833#(<= 1 main_~a~0)} #89#return; {3833#(<= 1 main_~a~0)} is VALID [2022-04-28 05:45:35,250 INFO L290 TraceCheckUtils]: 38: Hoare triple {3833#(<= 1 main_~a~0)} assume !false; {3833#(<= 1 main_~a~0)} is VALID [2022-04-28 05:45:35,250 INFO L290 TraceCheckUtils]: 39: Hoare triple {3833#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,251 INFO L290 TraceCheckUtils]: 40: Hoare triple {3870#(<= 1 main_~c~0)} assume !false; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,251 INFO L272 TraceCheckUtils]: 41: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,251 INFO L290 TraceCheckUtils]: 42: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,251 INFO L290 TraceCheckUtils]: 43: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,251 INFO L290 TraceCheckUtils]: 44: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,251 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #91#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,251 INFO L272 TraceCheckUtils]: 46: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,251 INFO L290 TraceCheckUtils]: 47: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,252 INFO L290 TraceCheckUtils]: 48: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,252 INFO L290 TraceCheckUtils]: 49: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,252 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #93#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,252 INFO L272 TraceCheckUtils]: 51: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,252 INFO L290 TraceCheckUtils]: 52: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,252 INFO L290 TraceCheckUtils]: 53: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,252 INFO L290 TraceCheckUtils]: 54: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,253 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #95#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,253 INFO L272 TraceCheckUtils]: 56: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,253 INFO L290 TraceCheckUtils]: 57: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,253 INFO L290 TraceCheckUtils]: 58: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,253 INFO L290 TraceCheckUtils]: 59: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,254 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #97#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,254 INFO L290 TraceCheckUtils]: 61: Hoare triple {3870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,255 INFO L290 TraceCheckUtils]: 62: Hoare triple {3870#(<= 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; {3940#(<= 1 main_~b~0)} is VALID [2022-04-28 05:45:35,255 INFO L290 TraceCheckUtils]: 63: Hoare triple {3940#(<= 1 main_~b~0)} assume !false; {3940#(<= 1 main_~b~0)} is VALID [2022-04-28 05:45:35,255 INFO L290 TraceCheckUtils]: 64: Hoare triple {3940#(<= 1 main_~b~0)} assume !(0 != ~b~0); {3745#false} is VALID [2022-04-28 05:45:35,255 INFO L272 TraceCheckUtils]: 65: Hoare triple {3745#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {3745#false} is VALID [2022-04-28 05:45:35,255 INFO L290 TraceCheckUtils]: 66: Hoare triple {3745#false} ~cond := #in~cond; {3745#false} is VALID [2022-04-28 05:45:35,255 INFO L290 TraceCheckUtils]: 67: Hoare triple {3745#false} assume 0 == ~cond; {3745#false} is VALID [2022-04-28 05:45:35,256 INFO L290 TraceCheckUtils]: 68: Hoare triple {3745#false} assume !false; {3745#false} is VALID [2022-04-28 05:45:35,256 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 14 proven. 11 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-04-28 05:45:35,256 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:45:35,518 INFO L290 TraceCheckUtils]: 68: Hoare triple {3745#false} assume !false; {3745#false} is VALID [2022-04-28 05:45:35,518 INFO L290 TraceCheckUtils]: 67: Hoare triple {3745#false} assume 0 == ~cond; {3745#false} is VALID [2022-04-28 05:45:35,518 INFO L290 TraceCheckUtils]: 66: Hoare triple {3745#false} ~cond := #in~cond; {3745#false} is VALID [2022-04-28 05:45:35,518 INFO L272 TraceCheckUtils]: 65: Hoare triple {3745#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {3745#false} is VALID [2022-04-28 05:45:35,518 INFO L290 TraceCheckUtils]: 64: Hoare triple {3940#(<= 1 main_~b~0)} assume !(0 != ~b~0); {3745#false} is VALID [2022-04-28 05:45:35,519 INFO L290 TraceCheckUtils]: 63: Hoare triple {3940#(<= 1 main_~b~0)} assume !false; {3940#(<= 1 main_~b~0)} is VALID [2022-04-28 05:45:35,519 INFO L290 TraceCheckUtils]: 62: Hoare triple {3870#(<= 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; {3940#(<= 1 main_~b~0)} is VALID [2022-04-28 05:45:35,519 INFO L290 TraceCheckUtils]: 61: Hoare triple {3870#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,520 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #97#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,520 INFO L290 TraceCheckUtils]: 59: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,520 INFO L290 TraceCheckUtils]: 58: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,520 INFO L290 TraceCheckUtils]: 57: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,520 INFO L272 TraceCheckUtils]: 56: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,521 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #95#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,521 INFO L290 TraceCheckUtils]: 54: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,521 INFO L290 TraceCheckUtils]: 53: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,521 INFO L290 TraceCheckUtils]: 52: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,521 INFO L272 TraceCheckUtils]: 51: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,522 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #93#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,522 INFO L290 TraceCheckUtils]: 49: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,522 INFO L290 TraceCheckUtils]: 48: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,522 INFO L290 TraceCheckUtils]: 47: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,522 INFO L272 TraceCheckUtils]: 46: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,523 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3744#true} {3870#(<= 1 main_~c~0)} #91#return; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,523 INFO L290 TraceCheckUtils]: 44: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,523 INFO L290 TraceCheckUtils]: 43: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,523 INFO L290 TraceCheckUtils]: 42: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,523 INFO L272 TraceCheckUtils]: 41: Hoare triple {3870#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,524 INFO L290 TraceCheckUtils]: 40: Hoare triple {3870#(<= 1 main_~c~0)} assume !false; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,524 INFO L290 TraceCheckUtils]: 39: Hoare triple {3833#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3870#(<= 1 main_~c~0)} is VALID [2022-04-28 05:45:35,524 INFO L290 TraceCheckUtils]: 38: Hoare triple {3833#(<= 1 main_~a~0)} assume !false; {3833#(<= 1 main_~a~0)} is VALID [2022-04-28 05:45:35,525 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3744#true} {3833#(<= 1 main_~a~0)} #89#return; {3833#(<= 1 main_~a~0)} is VALID [2022-04-28 05:45:35,525 INFO L290 TraceCheckUtils]: 36: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,525 INFO L290 TraceCheckUtils]: 35: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,525 INFO L290 TraceCheckUtils]: 34: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,525 INFO L272 TraceCheckUtils]: 33: Hoare triple {3833#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,526 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3744#true} {3833#(<= 1 main_~a~0)} #87#return; {3833#(<= 1 main_~a~0)} is VALID [2022-04-28 05:45:35,526 INFO L290 TraceCheckUtils]: 31: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,526 INFO L290 TraceCheckUtils]: 30: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,526 INFO L290 TraceCheckUtils]: 29: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,526 INFO L272 TraceCheckUtils]: 28: Hoare triple {3833#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,526 INFO L290 TraceCheckUtils]: 27: Hoare triple {3814#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3833#(<= 1 main_~a~0)} is VALID [2022-04-28 05:45:35,527 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3744#true} {3814#(<= 1 main_~x~0)} #85#return; {3814#(<= 1 main_~x~0)} is VALID [2022-04-28 05:45:35,527 INFO L290 TraceCheckUtils]: 25: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,527 INFO L290 TraceCheckUtils]: 24: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,527 INFO L290 TraceCheckUtils]: 23: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,527 INFO L272 TraceCheckUtils]: 22: Hoare triple {3814#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,528 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3807#(not (= |assume_abort_if_not_#in~cond| 0))} {3744#true} #83#return; {3814#(<= 1 main_~x~0)} is VALID [2022-04-28 05:45:35,528 INFO L290 TraceCheckUtils]: 20: Hoare triple {3807#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3807#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:45:35,528 INFO L290 TraceCheckUtils]: 19: Hoare triple {4109#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {3807#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:45:35,529 INFO L290 TraceCheckUtils]: 18: Hoare triple {3744#true} ~cond := #in~cond; {4109#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:45:35,529 INFO L272 TraceCheckUtils]: 17: Hoare triple {3744#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,529 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3744#true} {3744#true} #81#return; {3744#true} is VALID [2022-04-28 05:45:35,529 INFO L290 TraceCheckUtils]: 15: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,529 INFO L290 TraceCheckUtils]: 14: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,529 INFO L290 TraceCheckUtils]: 13: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,529 INFO L272 TraceCheckUtils]: 12: Hoare triple {3744#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,529 INFO L290 TraceCheckUtils]: 11: Hoare triple {3744#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3744#true} is VALID [2022-04-28 05:45:35,529 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3744#true} {3744#true} #79#return; {3744#true} is VALID [2022-04-28 05:45:35,529 INFO L290 TraceCheckUtils]: 9: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,529 INFO L290 TraceCheckUtils]: 8: Hoare triple {3744#true} assume !(0 == ~cond); {3744#true} is VALID [2022-04-28 05:45:35,529 INFO L290 TraceCheckUtils]: 7: Hoare triple {3744#true} ~cond := #in~cond; {3744#true} is VALID [2022-04-28 05:45:35,530 INFO L272 TraceCheckUtils]: 6: Hoare triple {3744#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3744#true} is VALID [2022-04-28 05:45:35,530 INFO L290 TraceCheckUtils]: 5: Hoare triple {3744#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3744#true} is VALID [2022-04-28 05:45:35,530 INFO L272 TraceCheckUtils]: 4: Hoare triple {3744#true} call #t~ret6 := main(); {3744#true} is VALID [2022-04-28 05:45:35,531 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3744#true} {3744#true} #103#return; {3744#true} is VALID [2022-04-28 05:45:35,531 INFO L290 TraceCheckUtils]: 2: Hoare triple {3744#true} assume true; {3744#true} is VALID [2022-04-28 05:45:35,531 INFO L290 TraceCheckUtils]: 1: Hoare triple {3744#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); {3744#true} is VALID [2022-04-28 05:45:35,531 INFO L272 TraceCheckUtils]: 0: Hoare triple {3744#true} call ULTIMATE.init(); {3744#true} is VALID [2022-04-28 05:45:35,531 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 14 proven. 11 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-04-28 05:45:35,531 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:45:35,531 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [356763866] [2022-04-28 05:45:35,531 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:45:35,531 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1431056184] [2022-04-28 05:45:35,532 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1431056184] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:45:35,532 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:45:35,532 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:45:35,532 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:45:35,532 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1014997497] [2022-04-28 05:45:35,532 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1014997497] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:45:35,532 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:45:35,532 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:45:35,532 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [429063237] [2022-04-28 05:45:35,532 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:45:35,533 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 69 [2022-04-28 05:45:35,534 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:45:35,534 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:45:35,568 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:45:35,568 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:45:35,568 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:45:35,569 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:45:35,569 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:45:35,569 INFO L87 Difference]: Start difference. First operand 59 states and 71 transitions. Second operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:45:36,258 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:36,258 INFO L93 Difference]: Finished difference Result 106 states and 146 transitions. [2022-04-28 05:45:36,258 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:45:36,258 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 69 [2022-04-28 05:45:36,259 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:45:36,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:45:36,261 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-28 05:45:36,261 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:45:36,264 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-28 05:45:36,264 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 110 transitions. [2022-04-28 05:45:36,341 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:45:36,343 INFO L225 Difference]: With dead ends: 106 [2022-04-28 05:45:36,343 INFO L226 Difference]: Without dead ends: 98 [2022-04-28 05:45:36,343 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 142 GetRequests, 129 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:45:36,343 INFO L413 NwaCegarLoop]: 60 mSDtfsCounter, 30 mSDsluCounter, 199 mSDsCounter, 0 mSdLazyCounter, 174 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 259 SdHoareTripleChecker+Invalid, 227 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 174 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:45:36,344 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 259 Invalid, 227 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 174 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:45:36,344 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-28 05:45:36,456 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 89. [2022-04-28 05:45:36,456 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:45:36,456 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 05:45:36,457 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 05:45:36,457 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 05:45:36,460 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:36,460 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-28 05:45:36,460 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-28 05:45:36,460 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:45:36,460 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:45:36,461 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) Second operand 98 states. [2022-04-28 05:45:36,461 INFO L87 Difference]: Start difference. First operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) Second operand 98 states. [2022-04-28 05:45:36,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:36,463 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-28 05:45:36,464 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-28 05:45:36,464 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:45:36,464 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:45:36,464 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:45:36,464 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:45:36,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-28 05:45:36,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 122 transitions. [2022-04-28 05:45:36,467 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 122 transitions. Word has length 69 [2022-04-28 05:45:36,467 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:45:36,467 INFO L495 AbstractCegarLoop]: Abstraction has 89 states and 122 transitions. [2022-04-28 05:45:36,467 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.0) internal successors, (24), 7 states have internal predecessors, (24), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:45:36,467 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 89 states and 122 transitions. [2022-04-28 05:45:36,614 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-28 05:45:36,614 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 122 transitions. [2022-04-28 05:45:36,615 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-28 05:45:36,615 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:45:36,615 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 6, 5, 5, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:45:36,631 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-28 05:45:36,815 WARN L477 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-28 05:45:36,816 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:45:36,816 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:45:36,816 INFO L85 PathProgramCache]: Analyzing trace with hash 376741854, now seen corresponding path program 1 times [2022-04-28 05:45:36,816 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:45:36,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [745525949] [2022-04-28 05:45:36,816 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:45:36,816 INFO L85 PathProgramCache]: Analyzing trace with hash 376741854, now seen corresponding path program 2 times [2022-04-28 05:45:36,816 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:45:36,817 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1416490553] [2022-04-28 05:45:36,817 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:45:36,817 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:45:36,828 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:45:36,828 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1488274318] [2022-04-28 05:45:36,828 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:45:36,829 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:45:36,829 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:45:36,829 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-28 05:45:36,830 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-28 05:45:36,878 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:45:36,878 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:45:36,879 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-28 05:45:36,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:45:36,891 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:45:37,139 INFO L272 TraceCheckUtils]: 0: Hoare triple {4762#true} call ULTIMATE.init(); {4762#true} is VALID [2022-04-28 05:45:37,140 INFO L290 TraceCheckUtils]: 1: Hoare triple {4762#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); {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L290 TraceCheckUtils]: 2: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4762#true} {4762#true} #103#return; {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L272 TraceCheckUtils]: 4: Hoare triple {4762#true} call #t~ret6 := main(); {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L290 TraceCheckUtils]: 5: Hoare triple {4762#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L272 TraceCheckUtils]: 6: Hoare triple {4762#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L290 TraceCheckUtils]: 7: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L290 TraceCheckUtils]: 8: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L290 TraceCheckUtils]: 9: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4762#true} {4762#true} #79#return; {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L290 TraceCheckUtils]: 11: Hoare triple {4762#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L272 TraceCheckUtils]: 12: Hoare triple {4762#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L290 TraceCheckUtils]: 13: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L290 TraceCheckUtils]: 14: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:37,141 INFO L290 TraceCheckUtils]: 15: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:37,142 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4762#true} {4762#true} #81#return; {4762#true} is VALID [2022-04-28 05:45:37,142 INFO L272 TraceCheckUtils]: 17: Hoare triple {4762#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:37,142 INFO L290 TraceCheckUtils]: 18: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:37,142 INFO L290 TraceCheckUtils]: 19: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:37,142 INFO L290 TraceCheckUtils]: 20: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:37,142 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4762#true} {4762#true} #83#return; {4762#true} is VALID [2022-04-28 05:45:37,142 INFO L272 TraceCheckUtils]: 22: Hoare triple {4762#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:37,142 INFO L290 TraceCheckUtils]: 23: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:37,142 INFO L290 TraceCheckUtils]: 24: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:37,142 INFO L290 TraceCheckUtils]: 25: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:37,142 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4762#true} {4762#true} #85#return; {4762#true} is VALID [2022-04-28 05:45:37,143 INFO L290 TraceCheckUtils]: 27: Hoare triple {4762#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:45:37,143 INFO L272 TraceCheckUtils]: 28: Hoare triple {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:37,143 INFO L290 TraceCheckUtils]: 29: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:37,143 INFO L290 TraceCheckUtils]: 30: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:37,143 INFO L290 TraceCheckUtils]: 31: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:37,143 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4762#true} {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} #87#return; {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:45:37,143 INFO L272 TraceCheckUtils]: 33: Hoare triple {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:37,144 INFO L290 TraceCheckUtils]: 34: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:37,144 INFO L290 TraceCheckUtils]: 35: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:37,144 INFO L290 TraceCheckUtils]: 36: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:37,144 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {4762#true} {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} #89#return; {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:45:37,144 INFO L290 TraceCheckUtils]: 38: Hoare triple {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !false; {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:45:37,145 INFO L290 TraceCheckUtils]: 39: Hoare triple {4848#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4885#(= main_~q~0 0)} is VALID [2022-04-28 05:45:37,145 INFO L290 TraceCheckUtils]: 40: Hoare triple {4885#(= main_~q~0 0)} assume !false; {4885#(= main_~q~0 0)} is VALID [2022-04-28 05:45:37,145 INFO L272 TraceCheckUtils]: 41: Hoare triple {4885#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:37,145 INFO L290 TraceCheckUtils]: 42: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:37,145 INFO L290 TraceCheckUtils]: 43: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:37,145 INFO L290 TraceCheckUtils]: 44: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:37,146 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4762#true} {4885#(= main_~q~0 0)} #91#return; {4885#(= main_~q~0 0)} is VALID [2022-04-28 05:45:37,146 INFO L272 TraceCheckUtils]: 46: Hoare triple {4885#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:37,146 INFO L290 TraceCheckUtils]: 47: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:37,146 INFO L290 TraceCheckUtils]: 48: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:37,146 INFO L290 TraceCheckUtils]: 49: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:37,146 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4762#true} {4885#(= main_~q~0 0)} #93#return; {4885#(= main_~q~0 0)} is VALID [2022-04-28 05:45:37,146 INFO L272 TraceCheckUtils]: 51: Hoare triple {4885#(= main_~q~0 0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:37,147 INFO L290 TraceCheckUtils]: 52: Hoare triple {4762#true} ~cond := #in~cond; {4925#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:45:37,147 INFO L290 TraceCheckUtils]: 53: Hoare triple {4925#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:45:37,147 INFO L290 TraceCheckUtils]: 54: Hoare triple {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:45:37,148 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} {4885#(= main_~q~0 0)} #95#return; {4936#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-28 05:45:37,148 INFO L272 TraceCheckUtils]: 56: Hoare triple {4936#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:37,148 INFO L290 TraceCheckUtils]: 57: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:37,148 INFO L290 TraceCheckUtils]: 58: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:37,148 INFO L290 TraceCheckUtils]: 59: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:37,149 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {4762#true} {4936#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} #97#return; {4936#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-28 05:45:37,149 INFO L290 TraceCheckUtils]: 61: Hoare triple {4936#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {4936#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-28 05:45:37,149 INFO L290 TraceCheckUtils]: 62: Hoare triple {4936#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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; {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:45:37,150 INFO L290 TraceCheckUtils]: 63: Hoare triple {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:45:37,150 INFO L290 TraceCheckUtils]: 64: Hoare triple {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:45:37,150 INFO L290 TraceCheckUtils]: 65: Hoare triple {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:45:37,151 INFO L272 TraceCheckUtils]: 66: Hoare triple {4958#(and (= main_~p~0 0) (= main_~a~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)); {4762#true} is VALID [2022-04-28 05:45:37,151 INFO L290 TraceCheckUtils]: 67: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:37,151 INFO L290 TraceCheckUtils]: 68: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:37,151 INFO L290 TraceCheckUtils]: 69: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:37,151 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {4762#true} {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {4958#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:45:37,152 INFO L272 TraceCheckUtils]: 71: Hoare triple {4958#(and (= main_~p~0 0) (= 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)); {4986#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:45:37,152 INFO L290 TraceCheckUtils]: 72: Hoare triple {4986#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4990#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:45:37,153 INFO L290 TraceCheckUtils]: 73: Hoare triple {4990#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4763#false} is VALID [2022-04-28 05:45:37,153 INFO L290 TraceCheckUtils]: 74: Hoare triple {4763#false} assume !false; {4763#false} is VALID [2022-04-28 05:45:37,153 INFO L134 CoverageAnalysis]: Checked inductivity of 115 backedges. 15 proven. 12 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-28 05:45:37,153 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:45:49,423 INFO L290 TraceCheckUtils]: 74: Hoare triple {4763#false} assume !false; {4763#false} is VALID [2022-04-28 05:45:49,424 INFO L290 TraceCheckUtils]: 73: Hoare triple {4990#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4763#false} is VALID [2022-04-28 05:45:49,424 INFO L290 TraceCheckUtils]: 72: Hoare triple {4986#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4990#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:45:49,425 INFO L272 TraceCheckUtils]: 71: Hoare triple {5006#(= 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)); {4986#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:45:49,425 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {4762#true} {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #91#return; {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:45:49,425 INFO L290 TraceCheckUtils]: 69: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:49,426 INFO L290 TraceCheckUtils]: 68: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:49,426 INFO L290 TraceCheckUtils]: 67: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:49,426 INFO L272 TraceCheckUtils]: 66: Hoare triple {5006#(= main_~a~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)); {4762#true} is VALID [2022-04-28 05:45:49,429 INFO L290 TraceCheckUtils]: 65: Hoare triple {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:45:49,430 INFO L290 TraceCheckUtils]: 64: Hoare triple {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:45:49,430 INFO L290 TraceCheckUtils]: 63: Hoare triple {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:45:49,431 INFO L290 TraceCheckUtils]: 62: Hoare triple {5034#(= 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; {5006#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:45:49,431 INFO L290 TraceCheckUtils]: 61: Hoare triple {5034#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {5034#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:45:49,433 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {4762#true} {5034#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #97#return; {5034#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:45:49,434 INFO L290 TraceCheckUtils]: 59: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:49,434 INFO L290 TraceCheckUtils]: 58: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:49,434 INFO L290 TraceCheckUtils]: 57: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:49,434 INFO L272 TraceCheckUtils]: 56: Hoare triple {5034#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:49,435 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} {4762#true} #95#return; {5034#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:45:49,435 INFO L290 TraceCheckUtils]: 54: Hoare triple {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:45:49,435 INFO L290 TraceCheckUtils]: 53: Hoare triple {5065#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {4929#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:45:49,436 INFO L290 TraceCheckUtils]: 52: Hoare triple {4762#true} ~cond := #in~cond; {5065#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:45:49,436 INFO L272 TraceCheckUtils]: 51: Hoare triple {4762#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:49,436 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4762#true} {4762#true} #93#return; {4762#true} is VALID [2022-04-28 05:45:49,436 INFO L290 TraceCheckUtils]: 49: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:49,436 INFO L290 TraceCheckUtils]: 48: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:49,436 INFO L290 TraceCheckUtils]: 47: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:49,436 INFO L272 TraceCheckUtils]: 46: Hoare triple {4762#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:49,436 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4762#true} {4762#true} #91#return; {4762#true} is VALID [2022-04-28 05:45:49,436 INFO L290 TraceCheckUtils]: 44: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L290 TraceCheckUtils]: 43: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L290 TraceCheckUtils]: 42: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L272 TraceCheckUtils]: 41: Hoare triple {4762#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L290 TraceCheckUtils]: 40: Hoare triple {4762#true} assume !false; {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L290 TraceCheckUtils]: 39: Hoare triple {4762#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L290 TraceCheckUtils]: 38: Hoare triple {4762#true} assume !false; {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {4762#true} {4762#true} #89#return; {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L290 TraceCheckUtils]: 36: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L290 TraceCheckUtils]: 35: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L290 TraceCheckUtils]: 34: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L272 TraceCheckUtils]: 33: Hoare triple {4762#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4762#true} {4762#true} #87#return; {4762#true} is VALID [2022-04-28 05:45:49,437 INFO L290 TraceCheckUtils]: 31: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L290 TraceCheckUtils]: 30: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L290 TraceCheckUtils]: 29: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L272 TraceCheckUtils]: 28: Hoare triple {4762#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L290 TraceCheckUtils]: 27: Hoare triple {4762#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4762#true} {4762#true} #85#return; {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L290 TraceCheckUtils]: 25: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L290 TraceCheckUtils]: 24: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L290 TraceCheckUtils]: 23: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L272 TraceCheckUtils]: 22: Hoare triple {4762#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4762#true} {4762#true} #83#return; {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L290 TraceCheckUtils]: 20: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L290 TraceCheckUtils]: 19: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L290 TraceCheckUtils]: 18: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:49,438 INFO L272 TraceCheckUtils]: 17: Hoare triple {4762#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4762#true} {4762#true} #81#return; {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L290 TraceCheckUtils]: 15: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L290 TraceCheckUtils]: 14: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L290 TraceCheckUtils]: 13: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L272 TraceCheckUtils]: 12: Hoare triple {4762#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L290 TraceCheckUtils]: 11: Hoare triple {4762#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4762#true} {4762#true} #79#return; {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L290 TraceCheckUtils]: 9: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L290 TraceCheckUtils]: 8: Hoare triple {4762#true} assume !(0 == ~cond); {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L290 TraceCheckUtils]: 7: Hoare triple {4762#true} ~cond := #in~cond; {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L272 TraceCheckUtils]: 6: Hoare triple {4762#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L290 TraceCheckUtils]: 5: Hoare triple {4762#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4762#true} is VALID [2022-04-28 05:45:49,439 INFO L272 TraceCheckUtils]: 4: Hoare triple {4762#true} call #t~ret6 := main(); {4762#true} is VALID [2022-04-28 05:45:49,440 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4762#true} {4762#true} #103#return; {4762#true} is VALID [2022-04-28 05:45:49,440 INFO L290 TraceCheckUtils]: 2: Hoare triple {4762#true} assume true; {4762#true} is VALID [2022-04-28 05:45:49,440 INFO L290 TraceCheckUtils]: 1: Hoare triple {4762#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); {4762#true} is VALID [2022-04-28 05:45:49,440 INFO L272 TraceCheckUtils]: 0: Hoare triple {4762#true} call ULTIMATE.init(); {4762#true} is VALID [2022-04-28 05:45:49,440 INFO L134 CoverageAnalysis]: Checked inductivity of 115 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-28 05:45:49,440 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:45:49,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1416490553] [2022-04-28 05:45:49,440 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:45:49,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1488274318] [2022-04-28 05:45:49,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1488274318] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:45:49,440 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:45:49,441 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 8] total 13 [2022-04-28 05:45:49,441 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:45:49,441 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [745525949] [2022-04-28 05:45:49,441 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [745525949] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:45:49,441 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:45:49,441 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 05:45:49,441 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [193204468] [2022-04-28 05:45:49,441 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:45:49,442 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 75 [2022-04-28 05:45:49,442 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:45:49,442 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 05:45:49,481 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-28 05:45:49,481 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 05:45:49,481 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:45:49,482 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 05:45:49,482 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:45:49,482 INFO L87 Difference]: Start difference. First operand 89 states and 122 transitions. Second operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 05:45:50,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:50,277 INFO L93 Difference]: Finished difference Result 124 states and 173 transitions. [2022-04-28 05:45:50,277 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:45:50,277 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 75 [2022-04-28 05:45:50,278 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:45:50,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 05:45:50,279 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 83 transitions. [2022-04-28 05:45:50,279 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 05:45:50,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 83 transitions. [2022-04-28 05:45:50,280 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 83 transitions. [2022-04-28 05:45:50,348 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-28 05:45:50,350 INFO L225 Difference]: With dead ends: 124 [2022-04-28 05:45:50,350 INFO L226 Difference]: Without dead ends: 121 [2022-04-28 05:45:50,351 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 152 GetRequests, 137 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=50, Invalid=190, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:45:50,351 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 23 mSDsluCounter, 174 mSDsCounter, 0 mSdLazyCounter, 212 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 218 SdHoareTripleChecker+Invalid, 229 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 212 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:45:50,351 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [27 Valid, 218 Invalid, 229 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 212 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:45:50,352 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 121 states. [2022-04-28 05:45:50,536 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 121 to 118. [2022-04-28 05:45:50,537 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:45:50,537 INFO L82 GeneralOperation]: Start isEquivalent. First operand 121 states. Second operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:45:50,537 INFO L74 IsIncluded]: Start isIncluded. First operand 121 states. Second operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:45:50,538 INFO L87 Difference]: Start difference. First operand 121 states. Second operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:45:50,541 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:50,541 INFO L93 Difference]: Finished difference Result 121 states and 169 transitions. [2022-04-28 05:45:50,541 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 169 transitions. [2022-04-28 05:45:50,541 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:45:50,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:45:50,542 INFO L74 IsIncluded]: Start isIncluded. First operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 121 states. [2022-04-28 05:45:50,542 INFO L87 Difference]: Start difference. First operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 121 states. [2022-04-28 05:45:50,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:50,545 INFO L93 Difference]: Finished difference Result 121 states and 169 transitions. [2022-04-28 05:45:50,545 INFO L276 IsEmpty]: Start isEmpty. Operand 121 states and 169 transitions. [2022-04-28 05:45:50,546 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:45:50,546 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:45:50,546 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:45:50,546 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:45:50,547 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 118 states, 62 states have (on average 1.2096774193548387) internal successors, (75), 64 states have internal predecessors, (75), 47 states have call successors, (47), 9 states have call predecessors, (47), 8 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:45:50,550 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 118 states to 118 states and 166 transitions. [2022-04-28 05:45:50,550 INFO L78 Accepts]: Start accepts. Automaton has 118 states and 166 transitions. Word has length 75 [2022-04-28 05:45:50,550 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:45:50,550 INFO L495 AbstractCegarLoop]: Abstraction has 118 states and 166 transitions. [2022-04-28 05:45:50,550 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.5) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 05:45:50,550 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 118 states and 166 transitions. [2022-04-28 05:45:50,746 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 166 edges. 166 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:45:50,746 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 166 transitions. [2022-04-28 05:45:50,746 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-28 05:45:50,746 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:45:50,746 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:45:50,762 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-28 05:45:50,955 WARN L477 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-28 05:45:50,956 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:45:50,956 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:45:50,956 INFO L85 PathProgramCache]: Analyzing trace with hash -1245952186, now seen corresponding path program 3 times [2022-04-28 05:45:50,956 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:45:50,956 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [662285527] [2022-04-28 05:45:50,956 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:45:50,956 INFO L85 PathProgramCache]: Analyzing trace with hash -1245952186, now seen corresponding path program 4 times [2022-04-28 05:45:50,957 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:45:50,957 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [684833573] [2022-04-28 05:45:50,957 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:45:50,957 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:45:50,987 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:45:50,987 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2027304995] [2022-04-28 05:45:50,987 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:45:50,988 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:45:50,988 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:45:50,991 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-28 05:45:50,992 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-28 05:45:51,037 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:45:51,037 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:45:51,038 INFO L263 TraceCheckSpWp]: Trace formula consists of 166 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-28 05:45:51,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:45:51,057 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:45:51,800 INFO L272 TraceCheckUtils]: 0: Hoare triple {5956#true} call ULTIMATE.init(); {5956#true} is VALID [2022-04-28 05:45:51,800 INFO L290 TraceCheckUtils]: 1: Hoare triple {5956#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); {5956#true} is VALID [2022-04-28 05:45:51,800 INFO L290 TraceCheckUtils]: 2: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,800 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5956#true} {5956#true} #103#return; {5956#true} is VALID [2022-04-28 05:45:51,800 INFO L272 TraceCheckUtils]: 4: Hoare triple {5956#true} call #t~ret6 := main(); {5956#true} is VALID [2022-04-28 05:45:51,800 INFO L290 TraceCheckUtils]: 5: Hoare triple {5956#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {5956#true} is VALID [2022-04-28 05:45:51,800 INFO L272 TraceCheckUtils]: 6: Hoare triple {5956#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,801 INFO L290 TraceCheckUtils]: 7: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:51,801 INFO L290 TraceCheckUtils]: 8: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:51,801 INFO L290 TraceCheckUtils]: 9: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,801 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5956#true} {5956#true} #79#return; {5956#true} is VALID [2022-04-28 05:45:51,801 INFO L290 TraceCheckUtils]: 11: Hoare triple {5956#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5956#true} is VALID [2022-04-28 05:45:51,801 INFO L272 TraceCheckUtils]: 12: Hoare triple {5956#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,801 INFO L290 TraceCheckUtils]: 13: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:51,801 INFO L290 TraceCheckUtils]: 14: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:51,801 INFO L290 TraceCheckUtils]: 15: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,801 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5956#true} {5956#true} #81#return; {5956#true} is VALID [2022-04-28 05:45:51,801 INFO L272 TraceCheckUtils]: 17: Hoare triple {5956#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,802 INFO L290 TraceCheckUtils]: 18: Hoare triple {5956#true} ~cond := #in~cond; {6015#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:45:51,802 INFO L290 TraceCheckUtils]: 19: Hoare triple {6015#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {6019#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:45:51,802 INFO L290 TraceCheckUtils]: 20: Hoare triple {6019#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {6019#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:45:51,803 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6019#(not (= |assume_abort_if_not_#in~cond| 0))} {5956#true} #83#return; {6026#(<= 1 main_~x~0)} is VALID [2022-04-28 05:45:51,803 INFO L272 TraceCheckUtils]: 22: Hoare triple {6026#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,803 INFO L290 TraceCheckUtils]: 23: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:51,803 INFO L290 TraceCheckUtils]: 24: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:51,803 INFO L290 TraceCheckUtils]: 25: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,803 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5956#true} {6026#(<= 1 main_~x~0)} #85#return; {6026#(<= 1 main_~x~0)} is VALID [2022-04-28 05:45:51,804 INFO L290 TraceCheckUtils]: 27: Hoare triple {6026#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {6045#(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) (= main_~p~0 1))} is VALID [2022-04-28 05:45:51,804 INFO L272 TraceCheckUtils]: 28: Hoare triple {6045#(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) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,804 INFO L290 TraceCheckUtils]: 29: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:51,804 INFO L290 TraceCheckUtils]: 30: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:51,804 INFO L290 TraceCheckUtils]: 31: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,805 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5956#true} {6045#(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) (= main_~p~0 1))} #87#return; {6045#(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) (= main_~p~0 1))} is VALID [2022-04-28 05:45:51,805 INFO L272 TraceCheckUtils]: 33: Hoare triple {6045#(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) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,805 INFO L290 TraceCheckUtils]: 34: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:51,805 INFO L290 TraceCheckUtils]: 35: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:51,805 INFO L290 TraceCheckUtils]: 36: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,806 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5956#true} {6045#(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) (= main_~p~0 1))} #89#return; {6045#(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) (= main_~p~0 1))} is VALID [2022-04-28 05:45:51,806 INFO L290 TraceCheckUtils]: 38: Hoare triple {6045#(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) (= main_~p~0 1))} assume !false; {6045#(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) (= main_~p~0 1))} is VALID [2022-04-28 05:45:51,807 INFO L290 TraceCheckUtils]: 39: Hoare triple {6045#(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) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6082#(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) (= main_~p~0 1))} is VALID [2022-04-28 05:45:51,807 INFO L290 TraceCheckUtils]: 40: Hoare triple {6082#(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) (= main_~p~0 1))} assume !false; {6082#(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) (= main_~p~0 1))} is VALID [2022-04-28 05:45:51,807 INFO L272 TraceCheckUtils]: 41: Hoare triple {6082#(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) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,807 INFO L290 TraceCheckUtils]: 42: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:51,807 INFO L290 TraceCheckUtils]: 43: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:51,807 INFO L290 TraceCheckUtils]: 44: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,808 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5956#true} {6082#(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) (= main_~p~0 1))} #91#return; {6082#(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) (= main_~p~0 1))} is VALID [2022-04-28 05:45:51,808 INFO L272 TraceCheckUtils]: 46: Hoare triple {6082#(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) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,808 INFO L290 TraceCheckUtils]: 47: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:51,808 INFO L290 TraceCheckUtils]: 48: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:51,808 INFO L290 TraceCheckUtils]: 49: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,823 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5956#true} {6082#(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) (= main_~p~0 1))} #93#return; {6082#(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) (= main_~p~0 1))} is VALID [2022-04-28 05:45:51,824 INFO L272 TraceCheckUtils]: 51: Hoare triple {6082#(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) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,824 INFO L290 TraceCheckUtils]: 52: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:51,824 INFO L290 TraceCheckUtils]: 53: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:51,824 INFO L290 TraceCheckUtils]: 54: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,824 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {5956#true} {6082#(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) (= main_~p~0 1))} #95#return; {6082#(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) (= main_~p~0 1))} is VALID [2022-04-28 05:45:51,825 INFO L272 TraceCheckUtils]: 56: Hoare triple {6082#(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) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,825 INFO L290 TraceCheckUtils]: 57: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:51,825 INFO L290 TraceCheckUtils]: 58: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:51,825 INFO L290 TraceCheckUtils]: 59: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,826 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {5956#true} {6082#(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) (= main_~p~0 1))} #97#return; {6082#(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) (= main_~p~0 1))} is VALID [2022-04-28 05:45:51,826 INFO L290 TraceCheckUtils]: 61: Hoare triple {6082#(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) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {6149#(and (= main_~r~0 0) (<= 1 main_~x~0) (< main_~c~0 main_~y~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:45:51,827 INFO L290 TraceCheckUtils]: 62: Hoare triple {6149#(and (= main_~r~0 0) (<= 1 main_~x~0) (< main_~c~0 main_~y~0) (= main_~k~0 0) (= main_~s~0 1) (= 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; {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:45:51,827 INFO L290 TraceCheckUtils]: 63: Hoare triple {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:45:51,828 INFO L290 TraceCheckUtils]: 64: Hoare triple {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:45:51,828 INFO L290 TraceCheckUtils]: 65: Hoare triple {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:45:51,828 INFO L272 TraceCheckUtils]: 66: Hoare triple {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,828 INFO L290 TraceCheckUtils]: 67: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:51,828 INFO L290 TraceCheckUtils]: 68: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:51,828 INFO L290 TraceCheckUtils]: 69: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,829 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {5956#true} {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #91#return; {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:45:51,829 INFO L272 TraceCheckUtils]: 71: Hoare triple {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:51,829 INFO L290 TraceCheckUtils]: 72: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:51,829 INFO L290 TraceCheckUtils]: 73: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:51,829 INFO L290 TraceCheckUtils]: 74: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:51,830 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {5956#true} {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #93#return; {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:45:51,830 INFO L272 TraceCheckUtils]: 76: Hoare triple {6153#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6196#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:45:51,831 INFO L290 TraceCheckUtils]: 77: Hoare triple {6196#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6200#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:45:51,831 INFO L290 TraceCheckUtils]: 78: Hoare triple {6200#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5957#false} is VALID [2022-04-28 05:45:51,831 INFO L290 TraceCheckUtils]: 79: Hoare triple {5957#false} assume !false; {5957#false} is VALID [2022-04-28 05:45:51,831 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 18 proven. 15 refuted. 0 times theorem prover too weak. 105 trivial. 0 not checked. [2022-04-28 05:45:51,832 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:45:52,367 INFO L290 TraceCheckUtils]: 79: Hoare triple {5957#false} assume !false; {5957#false} is VALID [2022-04-28 05:45:52,368 INFO L290 TraceCheckUtils]: 78: Hoare triple {6200#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5957#false} is VALID [2022-04-28 05:45:52,368 INFO L290 TraceCheckUtils]: 77: Hoare triple {6196#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6200#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:45:52,369 INFO L272 TraceCheckUtils]: 76: Hoare triple {6216#(= 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)); {6196#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:45:52,369 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {5956#true} {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #93#return; {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:45:52,369 INFO L290 TraceCheckUtils]: 74: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:52,370 INFO L290 TraceCheckUtils]: 73: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:52,370 INFO L290 TraceCheckUtils]: 72: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:52,370 INFO L272 TraceCheckUtils]: 71: Hoare triple {6216#(= 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)); {5956#true} is VALID [2022-04-28 05:45:52,370 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {5956#true} {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #91#return; {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:45:52,370 INFO L290 TraceCheckUtils]: 69: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:52,370 INFO L290 TraceCheckUtils]: 68: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:52,370 INFO L290 TraceCheckUtils]: 67: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:52,371 INFO L272 TraceCheckUtils]: 66: Hoare triple {6216#(= 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)); {5956#true} is VALID [2022-04-28 05:45:52,371 INFO L290 TraceCheckUtils]: 65: Hoare triple {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:45:52,371 INFO L290 TraceCheckUtils]: 64: Hoare triple {6253#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6216#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:45:52,372 INFO L290 TraceCheckUtils]: 63: Hoare triple {6253#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0))} assume !false; {6253#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0))} is VALID [2022-04-28 05:45:54,373 WARN L290 TraceCheckUtils]: 62: Hoare triple {6260#(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) (= main_~c~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; {6253#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~b~0 0))} is UNKNOWN [2022-04-28 05:45:54,374 INFO L290 TraceCheckUtils]: 61: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} assume !(~c~0 >= ~b~0); {6260#(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) (= main_~c~0 0))} is VALID [2022-04-28 05:45:54,375 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {5956#true} {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #97#return; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-28 05:45:54,375 INFO L290 TraceCheckUtils]: 59: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:54,375 INFO L290 TraceCheckUtils]: 58: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:54,375 INFO L290 TraceCheckUtils]: 57: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:54,375 INFO L272 TraceCheckUtils]: 56: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:54,376 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {5956#true} {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #95#return; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-28 05:45:54,376 INFO L290 TraceCheckUtils]: 54: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:54,376 INFO L290 TraceCheckUtils]: 53: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:54,376 INFO L290 TraceCheckUtils]: 52: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:54,376 INFO L272 TraceCheckUtils]: 51: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:54,376 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {5956#true} {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #93#return; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-28 05:45:54,377 INFO L290 TraceCheckUtils]: 49: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:54,377 INFO L290 TraceCheckUtils]: 48: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:54,377 INFO L290 TraceCheckUtils]: 47: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:54,377 INFO L272 TraceCheckUtils]: 46: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:54,377 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {5956#true} {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} #91#return; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-28 05:45:54,378 INFO L290 TraceCheckUtils]: 44: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:54,378 INFO L290 TraceCheckUtils]: 43: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:54,378 INFO L290 TraceCheckUtils]: 42: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:54,378 INFO L272 TraceCheckUtils]: 41: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:54,378 INFO L290 TraceCheckUtils]: 40: Hoare triple {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} assume !false; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-28 05:45:54,379 INFO L290 TraceCheckUtils]: 39: Hoare triple {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6264#(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) (<= main_~b~0 main_~c~0) (= main_~c~0 0))} is VALID [2022-04-28 05:45:54,380 INFO L290 TraceCheckUtils]: 38: Hoare triple {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} assume !false; {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:45:54,380 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {5956#true} {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} #89#return; {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:45:54,380 INFO L290 TraceCheckUtils]: 36: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:54,380 INFO L290 TraceCheckUtils]: 35: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:54,380 INFO L290 TraceCheckUtils]: 34: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:54,381 INFO L272 TraceCheckUtils]: 33: Hoare triple {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:54,381 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {5956#true} {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} #87#return; {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:45:54,381 INFO L290 TraceCheckUtils]: 31: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:54,381 INFO L290 TraceCheckUtils]: 30: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:54,381 INFO L290 TraceCheckUtils]: 29: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:54,381 INFO L272 TraceCheckUtils]: 28: Hoare triple {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:54,382 INFO L290 TraceCheckUtils]: 27: Hoare triple {5956#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {6331#(or (= main_~a~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~a~0))} is VALID [2022-04-28 05:45:54,382 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5956#true} {5956#true} #85#return; {5956#true} is VALID [2022-04-28 05:45:54,382 INFO L290 TraceCheckUtils]: 25: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:54,382 INFO L290 TraceCheckUtils]: 24: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:54,382 INFO L290 TraceCheckUtils]: 23: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:54,383 INFO L272 TraceCheckUtils]: 22: Hoare triple {5956#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:54,383 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5956#true} {5956#true} #83#return; {5956#true} is VALID [2022-04-28 05:45:54,383 INFO L290 TraceCheckUtils]: 20: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:54,383 INFO L290 TraceCheckUtils]: 19: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:54,383 INFO L290 TraceCheckUtils]: 18: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:54,383 INFO L272 TraceCheckUtils]: 17: Hoare triple {5956#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:54,383 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {5956#true} {5956#true} #81#return; {5956#true} is VALID [2022-04-28 05:45:54,383 INFO L290 TraceCheckUtils]: 15: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:54,383 INFO L290 TraceCheckUtils]: 14: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:54,383 INFO L290 TraceCheckUtils]: 13: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:54,383 INFO L272 TraceCheckUtils]: 12: Hoare triple {5956#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:54,384 INFO L290 TraceCheckUtils]: 11: Hoare triple {5956#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5956#true} is VALID [2022-04-28 05:45:54,384 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5956#true} {5956#true} #79#return; {5956#true} is VALID [2022-04-28 05:45:54,384 INFO L290 TraceCheckUtils]: 9: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:54,384 INFO L290 TraceCheckUtils]: 8: Hoare triple {5956#true} assume !(0 == ~cond); {5956#true} is VALID [2022-04-28 05:45:54,384 INFO L290 TraceCheckUtils]: 7: Hoare triple {5956#true} ~cond := #in~cond; {5956#true} is VALID [2022-04-28 05:45:54,384 INFO L272 TraceCheckUtils]: 6: Hoare triple {5956#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {5956#true} is VALID [2022-04-28 05:45:54,384 INFO L290 TraceCheckUtils]: 5: Hoare triple {5956#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {5956#true} is VALID [2022-04-28 05:45:54,384 INFO L272 TraceCheckUtils]: 4: Hoare triple {5956#true} call #t~ret6 := main(); {5956#true} is VALID [2022-04-28 05:45:54,384 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5956#true} {5956#true} #103#return; {5956#true} is VALID [2022-04-28 05:45:54,384 INFO L290 TraceCheckUtils]: 2: Hoare triple {5956#true} assume true; {5956#true} is VALID [2022-04-28 05:45:54,385 INFO L290 TraceCheckUtils]: 1: Hoare triple {5956#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); {5956#true} is VALID [2022-04-28 05:45:54,385 INFO L272 TraceCheckUtils]: 0: Hoare triple {5956#true} call ULTIMATE.init(); {5956#true} is VALID [2022-04-28 05:45:54,385 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 12 proven. 6 refuted. 0 times theorem prover too weak. 120 trivial. 0 not checked. [2022-04-28 05:45:54,385 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:45:54,385 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [684833573] [2022-04-28 05:45:54,385 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:45:54,385 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2027304995] [2022-04-28 05:45:54,386 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2027304995] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:45:54,386 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:45:54,386 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9] total 16 [2022-04-28 05:45:54,386 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:45:54,386 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [662285527] [2022-04-28 05:45:54,386 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [662285527] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:45:54,386 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:45:54,386 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:45:54,386 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [530855534] [2022-04-28 05:45:54,386 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:45:54,387 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 80 [2022-04-28 05:45:54,387 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:45:54,387 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 05:45:54,429 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-28 05:45:54,430 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:45:54,430 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:45:54,430 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:45:54,430 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=198, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:45:54,430 INFO L87 Difference]: Start difference. First operand 118 states and 166 transitions. Second operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 05:45:55,426 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:55,426 INFO L93 Difference]: Finished difference Result 130 states and 176 transitions. [2022-04-28 05:45:55,426 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:45:55,426 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 80 [2022-04-28 05:45:55,426 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:45:55,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 05:45:55,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 91 transitions. [2022-04-28 05:45:55,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 05:45:55,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 91 transitions. [2022-04-28 05:45:55,429 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 91 transitions. [2022-04-28 05:45:55,518 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:45:55,520 INFO L225 Difference]: With dead ends: 130 [2022-04-28 05:45:55,520 INFO L226 Difference]: Without dead ends: 128 [2022-04-28 05:45:55,521 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 163 GetRequests, 144 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 53 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=68, Invalid=312, Unknown=0, NotChecked=0, Total=380 [2022-04-28 05:45:55,521 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 36 mSDsluCounter, 156 mSDsCounter, 0 mSdLazyCounter, 274 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 202 SdHoareTripleChecker+Invalid, 300 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 274 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:45:55,521 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [47 Valid, 202 Invalid, 300 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 274 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:45:55,522 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-28 05:45:55,693 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 126. [2022-04-28 05:45:55,693 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:45:55,694 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:45:55,694 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:45:55,699 INFO L87 Difference]: Start difference. First operand 128 states. Second operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:45:55,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:55,704 INFO L93 Difference]: Finished difference Result 128 states and 174 transitions. [2022-04-28 05:45:55,704 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 174 transitions. [2022-04-28 05:45:55,704 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:45:55,704 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:45:55,706 INFO L74 IsIncluded]: Start isIncluded. First operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 128 states. [2022-04-28 05:45:55,706 INFO L87 Difference]: Start difference. First operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 128 states. [2022-04-28 05:45:55,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:45:55,710 INFO L93 Difference]: Finished difference Result 128 states and 174 transitions. [2022-04-28 05:45:55,710 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 174 transitions. [2022-04-28 05:45:55,710 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:45:55,710 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:45:55,710 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:45:55,710 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:45:55,711 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 126 states, 68 states have (on average 1.1911764705882353) internal successors, (81), 70 states have internal predecessors, (81), 47 states have call successors, (47), 11 states have call predecessors, (47), 10 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:45:55,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 126 states to 126 states and 172 transitions. [2022-04-28 05:45:55,714 INFO L78 Accepts]: Start accepts. Automaton has 126 states and 172 transitions. Word has length 80 [2022-04-28 05:45:55,715 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:45:55,715 INFO L495 AbstractCegarLoop]: Abstraction has 126 states and 172 transitions. [2022-04-28 05:45:55,715 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 9 states have internal predecessors, (25), 5 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 05:45:55,715 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 126 states and 172 transitions. [2022-04-28 05:45:55,961 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-28 05:45:55,961 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 172 transitions. [2022-04-28 05:45:55,961 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-28 05:45:55,961 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:45:55,961 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:45:56,000 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 05:45:56,162 WARN L477 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-28 05:45:56,162 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:45:56,163 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:45:56,163 INFO L85 PathProgramCache]: Analyzing trace with hash 901388446, now seen corresponding path program 5 times [2022-04-28 05:45:56,163 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:45:56,163 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1610261794] [2022-04-28 05:45:56,163 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:45:56,163 INFO L85 PathProgramCache]: Analyzing trace with hash 901388446, now seen corresponding path program 6 times [2022-04-28 05:45:56,163 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:45:56,164 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1412143961] [2022-04-28 05:45:56,164 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:45:56,164 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:45:56,173 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:45:56,173 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1109785907] [2022-04-28 05:45:56,174 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:45:56,174 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:45:56,174 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:45:56,175 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-28 05:45:56,178 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-28 05:45:56,227 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 05:45:56,228 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:45:56,228 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 45 conjunts are in the unsatisfiable core [2022-04-28 05:45:56,246 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:45:56,249 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:45:59,884 INFO L272 TraceCheckUtils]: 0: Hoare triple {7227#true} call ULTIMATE.init(); {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L290 TraceCheckUtils]: 1: Hoare triple {7227#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); {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L290 TraceCheckUtils]: 2: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7227#true} {7227#true} #103#return; {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L272 TraceCheckUtils]: 4: Hoare triple {7227#true} call #t~ret6 := main(); {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L290 TraceCheckUtils]: 5: Hoare triple {7227#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L272 TraceCheckUtils]: 6: Hoare triple {7227#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L290 TraceCheckUtils]: 7: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L290 TraceCheckUtils]: 8: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L290 TraceCheckUtils]: 9: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7227#true} {7227#true} #79#return; {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L290 TraceCheckUtils]: 11: Hoare triple {7227#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L272 TraceCheckUtils]: 12: Hoare triple {7227#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {7227#true} is VALID [2022-04-28 05:45:59,885 INFO L290 TraceCheckUtils]: 13: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L290 TraceCheckUtils]: 14: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L290 TraceCheckUtils]: 15: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {7227#true} {7227#true} #81#return; {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L272 TraceCheckUtils]: 17: Hoare triple {7227#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L290 TraceCheckUtils]: 18: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L290 TraceCheckUtils]: 19: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L290 TraceCheckUtils]: 20: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7227#true} {7227#true} #83#return; {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L272 TraceCheckUtils]: 22: Hoare triple {7227#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L290 TraceCheckUtils]: 23: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L290 TraceCheckUtils]: 24: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L290 TraceCheckUtils]: 25: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,886 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7227#true} {7227#true} #85#return; {7227#true} is VALID [2022-04-28 05:45:59,887 INFO L290 TraceCheckUtils]: 27: Hoare triple {7227#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {7313#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:45:59,887 INFO L272 TraceCheckUtils]: 28: Hoare triple {7313#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {7227#true} is VALID [2022-04-28 05:45:59,887 INFO L290 TraceCheckUtils]: 29: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-28 05:45:59,887 INFO L290 TraceCheckUtils]: 30: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-28 05:45:59,887 INFO L290 TraceCheckUtils]: 31: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,888 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {7227#true} {7313#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #87#return; {7313#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:45:59,888 INFO L272 TraceCheckUtils]: 33: Hoare triple {7313#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {7227#true} is VALID [2022-04-28 05:45:59,888 INFO L290 TraceCheckUtils]: 34: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-28 05:45:59,888 INFO L290 TraceCheckUtils]: 35: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-28 05:45:59,888 INFO L290 TraceCheckUtils]: 36: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,889 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {7227#true} {7313#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #89#return; {7313#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:45:59,889 INFO L290 TraceCheckUtils]: 38: Hoare triple {7313#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !false; {7313#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:45:59,890 INFO L290 TraceCheckUtils]: 39: Hoare triple {7313#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:45:59,890 INFO L290 TraceCheckUtils]: 40: Hoare triple {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !false; {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:45:59,890 INFO L272 TraceCheckUtils]: 41: Hoare triple {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7227#true} is VALID [2022-04-28 05:45:59,890 INFO L290 TraceCheckUtils]: 42: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-28 05:45:59,890 INFO L290 TraceCheckUtils]: 43: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-28 05:45:59,890 INFO L290 TraceCheckUtils]: 44: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,891 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {7227#true} {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #91#return; {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:45:59,891 INFO L272 TraceCheckUtils]: 46: Hoare triple {7350#(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_~xy~0 (* main_~y~0 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)); {7227#true} is VALID [2022-04-28 05:45:59,891 INFO L290 TraceCheckUtils]: 47: Hoare triple {7227#true} ~cond := #in~cond; {7375#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:45:59,892 INFO L290 TraceCheckUtils]: 48: Hoare triple {7375#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:45:59,892 INFO L290 TraceCheckUtils]: 49: Hoare triple {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:45:59,893 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} {7350#(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_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #93#return; {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:45:59,893 INFO L272 TraceCheckUtils]: 51: Hoare triple {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~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)); {7227#true} is VALID [2022-04-28 05:45:59,893 INFO L290 TraceCheckUtils]: 52: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-28 05:45:59,893 INFO L290 TraceCheckUtils]: 53: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-28 05:45:59,893 INFO L290 TraceCheckUtils]: 54: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,895 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7227#true} {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} #95#return; {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:45:59,895 INFO L272 TraceCheckUtils]: 56: Hoare triple {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {7227#true} is VALID [2022-04-28 05:45:59,895 INFO L290 TraceCheckUtils]: 57: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-28 05:45:59,895 INFO L290 TraceCheckUtils]: 58: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-28 05:45:59,895 INFO L290 TraceCheckUtils]: 59: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,896 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {7227#true} {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} #97#return; {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:45:59,896 INFO L290 TraceCheckUtils]: 61: Hoare triple {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 05:45:59,898 INFO L290 TraceCheckUtils]: 62: Hoare triple {7386#(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_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~xy~0 (* main_~y~0 main_~x~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; {7423#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:45:59,898 INFO L290 TraceCheckUtils]: 63: Hoare triple {7423#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {7423#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:45:59,899 INFO L290 TraceCheckUtils]: 64: Hoare triple {7423#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~a~0 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:45:59,903 INFO L290 TraceCheckUtils]: 65: Hoare triple {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:45:59,903 INFO L272 TraceCheckUtils]: 66: Hoare triple {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7227#true} is VALID [2022-04-28 05:45:59,903 INFO L290 TraceCheckUtils]: 67: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-28 05:45:59,903 INFO L290 TraceCheckUtils]: 68: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-28 05:45:59,903 INFO L290 TraceCheckUtils]: 69: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,904 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {7227#true} {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:45:59,904 INFO L272 TraceCheckUtils]: 71: Hoare triple {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7227#true} is VALID [2022-04-28 05:45:59,904 INFO L290 TraceCheckUtils]: 72: Hoare triple {7227#true} ~cond := #in~cond; {7227#true} is VALID [2022-04-28 05:45:59,904 INFO L290 TraceCheckUtils]: 73: Hoare triple {7227#true} assume !(0 == ~cond); {7227#true} is VALID [2022-04-28 05:45:59,904 INFO L290 TraceCheckUtils]: 74: Hoare triple {7227#true} assume true; {7227#true} is VALID [2022-04-28 05:45:59,905 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {7227#true} {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:45:59,905 INFO L272 TraceCheckUtils]: 76: Hoare triple {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7227#true} is VALID [2022-04-28 05:45:59,905 INFO L290 TraceCheckUtils]: 77: Hoare triple {7227#true} ~cond := #in~cond; {7375#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:45:59,906 INFO L290 TraceCheckUtils]: 78: Hoare triple {7375#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:45:59,906 INFO L290 TraceCheckUtils]: 79: Hoare triple {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:45:59,907 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {7379#(not (= |__VERIFIER_assert_#in~cond| 0))} {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:45:59,909 INFO L272 TraceCheckUtils]: 81: Hoare triple {7430#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {7482#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:45:59,910 INFO L290 TraceCheckUtils]: 82: Hoare triple {7482#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7486#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:45:59,910 INFO L290 TraceCheckUtils]: 83: Hoare triple {7486#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7228#false} is VALID [2022-04-28 05:45:59,910 INFO L290 TraceCheckUtils]: 84: Hoare triple {7228#false} assume !false; {7228#false} is VALID [2022-04-28 05:45:59,911 INFO L134 CoverageAnalysis]: Checked inductivity of 165 backedges. 30 proven. 21 refuted. 0 times theorem prover too weak. 114 trivial. 0 not checked. [2022-04-28 05:45:59,911 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:46:44,330 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:46:44,330 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1412143961] [2022-04-28 05:46:44,330 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:46:44,330 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1109785907] [2022-04-28 05:46:44,330 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1109785907] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 05:46:44,330 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:46:44,330 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-28 05:46:44,330 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:46:44,330 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1610261794] [2022-04-28 05:46:44,330 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1610261794] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:46:44,330 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:46:44,331 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:46:44,331 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [649433453] [2022-04-28 05:46:44,331 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:46:44,331 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) Word has length 85 [2022-04-28 05:46:44,331 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:46:44,331 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-28 05:46:44,379 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:46:44,380 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:46:44,380 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:46:44,380 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:46:44,380 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:46:44,380 INFO L87 Difference]: Start difference. First operand 126 states and 172 transitions. Second operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-28 05:46:45,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:46:45,544 INFO L93 Difference]: Finished difference Result 134 states and 179 transitions. [2022-04-28 05:46:45,544 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 05:46:45,545 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) Word has length 85 [2022-04-28 05:46:45,545 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:46:45,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-28 05:46:45,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 91 transitions. [2022-04-28 05:46:45,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-28 05:46:45,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 91 transitions. [2022-04-28 05:46:45,548 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 91 transitions. [2022-04-28 05:46:45,638 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:46:45,640 INFO L225 Difference]: With dead ends: 134 [2022-04-28 05:46:45,640 INFO L226 Difference]: Without dead ends: 132 [2022-04-28 05:46:45,641 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 77 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 23 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=47, Invalid=193, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:46:45,641 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 24 mSDsluCounter, 159 mSDsCounter, 0 mSdLazyCounter, 312 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 199 SdHoareTripleChecker+Invalid, 329 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 312 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 05:46:45,641 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 199 Invalid, 329 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 312 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 05:46:45,642 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-04-28 05:46:45,821 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 130. [2022-04-28 05:46:45,821 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:46:45,821 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:46:45,821 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:46:45,822 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:46:45,824 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:46:45,824 INFO L93 Difference]: Finished difference Result 132 states and 177 transitions. [2022-04-28 05:46:45,824 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 177 transitions. [2022-04-28 05:46:45,825 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:46:45,825 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:46:45,825 INFO L74 IsIncluded]: Start isIncluded. First operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 132 states. [2022-04-28 05:46:45,825 INFO L87 Difference]: Start difference. First operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 132 states. [2022-04-28 05:46:45,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:46:45,828 INFO L93 Difference]: Finished difference Result 132 states and 177 transitions. [2022-04-28 05:46:45,828 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 177 transitions. [2022-04-28 05:46:45,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:46:45,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:46:45,828 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:46:45,828 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:46:45,829 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 130 states, 71 states have (on average 1.1830985915492958) internal successors, (84), 73 states have internal predecessors, (84), 47 states have call successors, (47), 12 states have call predecessors, (47), 11 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:46:45,831 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 130 states to 130 states and 175 transitions. [2022-04-28 05:46:45,831 INFO L78 Accepts]: Start accepts. Automaton has 130 states and 175 transitions. Word has length 85 [2022-04-28 05:46:45,831 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:46:45,831 INFO L495 AbstractCegarLoop]: Abstraction has 130 states and 175 transitions. [2022-04-28 05:46:45,831 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.272727272727273) internal successors, (25), 10 states have internal predecessors, (25), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 5 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-28 05:46:45,831 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 130 states and 175 transitions. [2022-04-28 05:46:46,092 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:46:46,093 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 175 transitions. [2022-04-28 05:46:46,093 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 05:46:46,093 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:46:46,093 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:46:46,109 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-28 05:46:46,304 WARN L477 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-28 05:46:46,304 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:46:46,304 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:46:46,304 INFO L85 PathProgramCache]: Analyzing trace with hash -686534738, now seen corresponding path program 1 times [2022-04-28 05:46:46,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:46:46,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [731760068] [2022-04-28 05:46:46,305 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:46:46,305 INFO L85 PathProgramCache]: Analyzing trace with hash -686534738, now seen corresponding path program 2 times [2022-04-28 05:46:46,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:46:46,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2006653859] [2022-04-28 05:46:46,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:46:46,305 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:46:46,323 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:46:46,324 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1351887801] [2022-04-28 05:46:46,324 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:46:46,324 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:46:46,324 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:46:46,325 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-28 05:46:46,326 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-28 05:46:46,376 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:46:46,376 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:46:46,377 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 39 conjunts are in the unsatisfiable core [2022-04-28 05:46:46,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:46:46,387 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:46:46,927 INFO L272 TraceCheckUtils]: 0: Hoare triple {8307#true} call ULTIMATE.init(); {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L290 TraceCheckUtils]: 1: Hoare triple {8307#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); {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L290 TraceCheckUtils]: 2: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8307#true} {8307#true} #103#return; {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L272 TraceCheckUtils]: 4: Hoare triple {8307#true} call #t~ret6 := main(); {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L290 TraceCheckUtils]: 5: Hoare triple {8307#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L272 TraceCheckUtils]: 6: Hoare triple {8307#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L290 TraceCheckUtils]: 7: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L290 TraceCheckUtils]: 8: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L290 TraceCheckUtils]: 9: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8307#true} {8307#true} #79#return; {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L290 TraceCheckUtils]: 11: Hoare triple {8307#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8307#true} is VALID [2022-04-28 05:46:46,928 INFO L272 TraceCheckUtils]: 12: Hoare triple {8307#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L290 TraceCheckUtils]: 13: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L290 TraceCheckUtils]: 14: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L290 TraceCheckUtils]: 15: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8307#true} {8307#true} #81#return; {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L272 TraceCheckUtils]: 17: Hoare triple {8307#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L290 TraceCheckUtils]: 18: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L290 TraceCheckUtils]: 19: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L290 TraceCheckUtils]: 20: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8307#true} {8307#true} #83#return; {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L272 TraceCheckUtils]: 22: Hoare triple {8307#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L290 TraceCheckUtils]: 23: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L290 TraceCheckUtils]: 24: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L290 TraceCheckUtils]: 25: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,929 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8307#true} {8307#true} #85#return; {8307#true} is VALID [2022-04-28 05:46:46,930 INFO L290 TraceCheckUtils]: 27: Hoare triple {8307#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {8393#(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-28 05:46:46,930 INFO L272 TraceCheckUtils]: 28: Hoare triple {8393#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:46,930 INFO L290 TraceCheckUtils]: 29: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,930 INFO L290 TraceCheckUtils]: 30: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,930 INFO L290 TraceCheckUtils]: 31: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,931 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {8307#true} {8393#(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))} #87#return; {8393#(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-28 05:46:46,931 INFO L272 TraceCheckUtils]: 33: Hoare triple {8393#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:46,931 INFO L290 TraceCheckUtils]: 34: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,931 INFO L290 TraceCheckUtils]: 35: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,931 INFO L290 TraceCheckUtils]: 36: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,932 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {8307#true} {8393#(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))} #89#return; {8393#(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-28 05:46:46,932 INFO L290 TraceCheckUtils]: 38: Hoare triple {8393#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {8393#(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-28 05:46:46,932 INFO L290 TraceCheckUtils]: 39: Hoare triple {8393#(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);~c~0 := ~a~0;~k~0 := 0; {8430#(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-28 05:46:46,933 INFO L290 TraceCheckUtils]: 40: Hoare triple {8430#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {8430#(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-28 05:46:46,933 INFO L272 TraceCheckUtils]: 41: Hoare triple {8430#(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)); {8307#true} is VALID [2022-04-28 05:46:46,933 INFO L290 TraceCheckUtils]: 42: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,933 INFO L290 TraceCheckUtils]: 43: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,933 INFO L290 TraceCheckUtils]: 44: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,934 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8307#true} {8430#(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))} #91#return; {8430#(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-28 05:46:46,934 INFO L272 TraceCheckUtils]: 46: Hoare triple {8430#(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)); {8307#true} is VALID [2022-04-28 05:46:46,934 INFO L290 TraceCheckUtils]: 47: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,934 INFO L290 TraceCheckUtils]: 48: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,934 INFO L290 TraceCheckUtils]: 49: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,935 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8307#true} {8430#(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))} #93#return; {8430#(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-28 05:46:46,935 INFO L272 TraceCheckUtils]: 51: Hoare triple {8430#(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)); {8307#true} is VALID [2022-04-28 05:46:46,935 INFO L290 TraceCheckUtils]: 52: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,935 INFO L290 TraceCheckUtils]: 53: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,935 INFO L290 TraceCheckUtils]: 54: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,936 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8307#true} {8430#(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))} #95#return; {8430#(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-28 05:46:46,936 INFO L272 TraceCheckUtils]: 56: Hoare triple {8430#(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 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:46,936 INFO L290 TraceCheckUtils]: 57: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,936 INFO L290 TraceCheckUtils]: 58: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,936 INFO L290 TraceCheckUtils]: 59: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,937 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8307#true} {8430#(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))} #97#return; {8430#(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-28 05:46:46,937 INFO L290 TraceCheckUtils]: 61: Hoare triple {8430#(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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:46,937 INFO L290 TraceCheckUtils]: 62: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:46,938 INFO L272 TraceCheckUtils]: 63: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:46,938 INFO L290 TraceCheckUtils]: 64: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,938 INFO L290 TraceCheckUtils]: 65: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,938 INFO L290 TraceCheckUtils]: 66: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,938 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {8307#true} {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #91#return; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:46,939 INFO L272 TraceCheckUtils]: 68: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:46,939 INFO L290 TraceCheckUtils]: 69: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,939 INFO L290 TraceCheckUtils]: 70: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,939 INFO L290 TraceCheckUtils]: 71: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,939 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {8307#true} {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #93#return; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:46,940 INFO L272 TraceCheckUtils]: 73: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:46,940 INFO L290 TraceCheckUtils]: 74: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,940 INFO L290 TraceCheckUtils]: 75: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,940 INFO L290 TraceCheckUtils]: 76: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,947 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8307#true} {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #95#return; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:46,947 INFO L272 TraceCheckUtils]: 78: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:46,947 INFO L290 TraceCheckUtils]: 79: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:46,947 INFO L290 TraceCheckUtils]: 80: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:46,947 INFO L290 TraceCheckUtils]: 81: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:46,948 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {8307#true} {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #97#return; {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:46,948 INFO L290 TraceCheckUtils]: 83: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:46,949 INFO L290 TraceCheckUtils]: 84: Hoare triple {8497#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= 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; {8567#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:46:46,949 INFO L290 TraceCheckUtils]: 85: Hoare triple {8567#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !false; {8567#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:46:46,949 INFO L290 TraceCheckUtils]: 86: Hoare triple {8567#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {8574#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:46:46,950 INFO L272 TraceCheckUtils]: 87: Hoare triple {8574#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {8578#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:46:46,950 INFO L290 TraceCheckUtils]: 88: Hoare triple {8578#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8582#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:46:46,951 INFO L290 TraceCheckUtils]: 89: Hoare triple {8582#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8308#false} is VALID [2022-04-28 05:46:46,951 INFO L290 TraceCheckUtils]: 90: Hoare triple {8308#false} assume !false; {8308#false} is VALID [2022-04-28 05:46:46,951 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 16 proven. 8 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2022-04-28 05:46:46,951 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:46:47,422 INFO L290 TraceCheckUtils]: 90: Hoare triple {8308#false} assume !false; {8308#false} is VALID [2022-04-28 05:46:47,423 INFO L290 TraceCheckUtils]: 89: Hoare triple {8582#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8308#false} is VALID [2022-04-28 05:46:47,423 INFO L290 TraceCheckUtils]: 88: Hoare triple {8578#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8582#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:46:47,424 INFO L272 TraceCheckUtils]: 87: Hoare triple {8598#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {8578#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:46:47,424 INFO L290 TraceCheckUtils]: 86: Hoare triple {8602#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {8598#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-28 05:46:47,424 INFO L290 TraceCheckUtils]: 85: Hoare triple {8602#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {8602#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-28 05:46:47,869 INFO L290 TraceCheckUtils]: 84: Hoare triple {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* 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; {8602#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-28 05:46:47,870 INFO L290 TraceCheckUtils]: 83: Hoare triple {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:46:47,871 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {8307#true} {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:46:47,871 INFO L290 TraceCheckUtils]: 81: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,871 INFO L290 TraceCheckUtils]: 80: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,871 INFO L290 TraceCheckUtils]: 79: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,871 INFO L272 TraceCheckUtils]: 78: Hoare triple {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:47,872 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8307#true} {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:46:47,872 INFO L290 TraceCheckUtils]: 76: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,872 INFO L290 TraceCheckUtils]: 75: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,872 INFO L290 TraceCheckUtils]: 74: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,872 INFO L272 TraceCheckUtils]: 73: Hoare triple {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~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)); {8307#true} is VALID [2022-04-28 05:46:47,877 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {8307#true} {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:46:47,877 INFO L290 TraceCheckUtils]: 71: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,877 INFO L290 TraceCheckUtils]: 70: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,878 INFO L290 TraceCheckUtils]: 69: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,878 INFO L272 TraceCheckUtils]: 68: Hoare triple {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~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)); {8307#true} is VALID [2022-04-28 05:46:47,878 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {8307#true} {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:46:47,879 INFO L290 TraceCheckUtils]: 66: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,879 INFO L290 TraceCheckUtils]: 65: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,879 INFO L290 TraceCheckUtils]: 64: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,879 INFO L272 TraceCheckUtils]: 63: Hoare triple {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~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)); {8307#true} is VALID [2022-04-28 05:46:47,879 INFO L290 TraceCheckUtils]: 62: Hoare triple {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:46:47,974 INFO L290 TraceCheckUtils]: 61: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {8609#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:46:47,975 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8307#true} {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #97#return; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~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-28 05:46:47,975 INFO L290 TraceCheckUtils]: 59: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,975 INFO L290 TraceCheckUtils]: 58: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,975 INFO L290 TraceCheckUtils]: 57: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,975 INFO L272 TraceCheckUtils]: 56: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:47,976 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8307#true} {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #95#return; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~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-28 05:46:47,976 INFO L290 TraceCheckUtils]: 54: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,976 INFO L290 TraceCheckUtils]: 53: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,976 INFO L290 TraceCheckUtils]: 52: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,976 INFO L272 TraceCheckUtils]: 51: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:47,977 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8307#true} {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #93#return; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~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-28 05:46:47,977 INFO L290 TraceCheckUtils]: 49: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,977 INFO L290 TraceCheckUtils]: 48: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,977 INFO L290 TraceCheckUtils]: 47: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,977 INFO L272 TraceCheckUtils]: 46: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:47,978 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8307#true} {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #91#return; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~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-28 05:46:47,978 INFO L290 TraceCheckUtils]: 44: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,978 INFO L290 TraceCheckUtils]: 43: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,978 INFO L290 TraceCheckUtils]: 42: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,978 INFO L272 TraceCheckUtils]: 41: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:47,979 INFO L290 TraceCheckUtils]: 40: Hoare triple {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} assume !false; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~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-28 05:46:47,979 INFO L290 TraceCheckUtils]: 39: Hoare triple {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8679#(or (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~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-28 05:46:47,980 INFO L290 TraceCheckUtils]: 38: Hoare triple {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !false; {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:46:47,980 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {8307#true} {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #89#return; {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:46:47,980 INFO L290 TraceCheckUtils]: 36: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,980 INFO L290 TraceCheckUtils]: 35: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,981 INFO L290 TraceCheckUtils]: 34: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,981 INFO L272 TraceCheckUtils]: 33: Hoare triple {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:47,981 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {8307#true} {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #87#return; {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:46:47,981 INFO L290 TraceCheckUtils]: 31: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,981 INFO L290 TraceCheckUtils]: 30: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,981 INFO L290 TraceCheckUtils]: 29: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,981 INFO L272 TraceCheckUtils]: 28: Hoare triple {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:47,982 INFO L290 TraceCheckUtils]: 27: Hoare triple {8307#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {8746#(or (= (+ (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:46:47,982 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8307#true} {8307#true} #85#return; {8307#true} is VALID [2022-04-28 05:46:47,982 INFO L290 TraceCheckUtils]: 25: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,982 INFO L290 TraceCheckUtils]: 24: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,982 INFO L290 TraceCheckUtils]: 23: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,982 INFO L272 TraceCheckUtils]: 22: Hoare triple {8307#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:47,982 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8307#true} {8307#true} #83#return; {8307#true} is VALID [2022-04-28 05:46:47,982 INFO L290 TraceCheckUtils]: 20: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L290 TraceCheckUtils]: 19: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L290 TraceCheckUtils]: 18: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L272 TraceCheckUtils]: 17: Hoare triple {8307#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8307#true} {8307#true} #81#return; {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L290 TraceCheckUtils]: 15: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L290 TraceCheckUtils]: 14: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L290 TraceCheckUtils]: 13: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L272 TraceCheckUtils]: 12: Hoare triple {8307#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L290 TraceCheckUtils]: 11: Hoare triple {8307#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8307#true} {8307#true} #79#return; {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L290 TraceCheckUtils]: 9: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L290 TraceCheckUtils]: 8: Hoare triple {8307#true} assume !(0 == ~cond); {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L290 TraceCheckUtils]: 7: Hoare triple {8307#true} ~cond := #in~cond; {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L272 TraceCheckUtils]: 6: Hoare triple {8307#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {8307#true} is VALID [2022-04-28 05:46:47,983 INFO L290 TraceCheckUtils]: 5: Hoare triple {8307#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8307#true} is VALID [2022-04-28 05:46:47,984 INFO L272 TraceCheckUtils]: 4: Hoare triple {8307#true} call #t~ret6 := main(); {8307#true} is VALID [2022-04-28 05:46:47,984 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8307#true} {8307#true} #103#return; {8307#true} is VALID [2022-04-28 05:46:47,984 INFO L290 TraceCheckUtils]: 2: Hoare triple {8307#true} assume true; {8307#true} is VALID [2022-04-28 05:46:47,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {8307#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); {8307#true} is VALID [2022-04-28 05:46:47,984 INFO L272 TraceCheckUtils]: 0: Hoare triple {8307#true} call ULTIMATE.init(); {8307#true} is VALID [2022-04-28 05:46:47,984 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 16 proven. 8 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2022-04-28 05:46:47,984 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:46:47,984 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2006653859] [2022-04-28 05:46:47,984 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:46:47,984 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1351887801] [2022-04-28 05:46:47,985 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1351887801] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:46:47,985 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:46:47,985 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-28 05:46:47,985 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:46:47,985 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [731760068] [2022-04-28 05:46:47,985 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [731760068] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:46:47,985 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:46:47,985 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:46:47,985 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1592656059] [2022-04-28 05:46:47,985 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:46:47,986 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) Word has length 91 [2022-04-28 05:46:47,986 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:46:47,986 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-28 05:46:48,029 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:46:48,029 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:46:48,029 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:46:48,030 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:46:48,030 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=145, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:46:48,030 INFO L87 Difference]: Start difference. First operand 130 states and 175 transitions. Second operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-28 05:46:49,323 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:46:49,323 INFO L93 Difference]: Finished difference Result 157 states and 211 transitions. [2022-04-28 05:46:49,324 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:46:49,324 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) Word has length 91 [2022-04-28 05:46:49,324 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:46:49,324 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-28 05:46:49,325 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 105 transitions. [2022-04-28 05:46:49,325 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-28 05:46:49,327 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 105 transitions. [2022-04-28 05:46:49,327 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 105 transitions. [2022-04-28 05:46:49,418 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:46:49,421 INFO L225 Difference]: With dead ends: 157 [2022-04-28 05:46:49,422 INFO L226 Difference]: Without dead ends: 154 [2022-04-28 05:46:49,422 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 185 GetRequests, 168 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=63, Invalid=243, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:46:49,422 INFO L413 NwaCegarLoop]: 57 mSDtfsCounter, 19 mSDsluCounter, 218 mSDsCounter, 0 mSdLazyCounter, 323 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 275 SdHoareTripleChecker+Invalid, 342 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 323 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:46:49,422 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [27 Valid, 275 Invalid, 342 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 323 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:46:49,423 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 154 states. [2022-04-28 05:46:49,649 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 154 to 153. [2022-04-28 05:46:49,649 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:46:49,650 INFO L82 GeneralOperation]: Start isEquivalent. First operand 154 states. Second operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-28 05:46:49,650 INFO L74 IsIncluded]: Start isIncluded. First operand 154 states. Second operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-28 05:46:49,650 INFO L87 Difference]: Start difference. First operand 154 states. Second operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-28 05:46:49,653 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:46:49,653 INFO L93 Difference]: Finished difference Result 154 states and 207 transitions. [2022-04-28 05:46:49,654 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 207 transitions. [2022-04-28 05:46:49,654 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:46:49,654 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:46:49,654 INFO L74 IsIncluded]: Start isIncluded. First operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 154 states. [2022-04-28 05:46:49,654 INFO L87 Difference]: Start difference. First operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 154 states. [2022-04-28 05:46:49,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:46:49,659 INFO L93 Difference]: Finished difference Result 154 states and 207 transitions. [2022-04-28 05:46:49,659 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 207 transitions. [2022-04-28 05:46:49,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:46:49,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:46:49,660 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:46:49,660 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:46:49,663 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 153 states, 84 states have (on average 1.1785714285714286) internal successors, (99), 86 states have internal predecessors, (99), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-28 05:46:49,666 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 153 states to 153 states and 206 transitions. [2022-04-28 05:46:49,666 INFO L78 Accepts]: Start accepts. Automaton has 153 states and 206 transitions. Word has length 91 [2022-04-28 05:46:49,666 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:46:49,666 INFO L495 AbstractCegarLoop]: Abstraction has 153 states and 206 transitions. [2022-04-28 05:46:49,666 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 8 states have internal predecessors, (23), 5 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 4 states have call predecessors, (15), 4 states have call successors, (15) [2022-04-28 05:46:49,666 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 153 states and 206 transitions. [2022-04-28 05:46:49,943 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 206 edges. 206 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:46:49,944 INFO L276 IsEmpty]: Start isEmpty. Operand 153 states and 206 transitions. [2022-04-28 05:46:49,944 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-28 05:46:49,944 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:46:49,945 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 6, 6, 6, 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, 1, 1, 1, 1] [2022-04-28 05:46:49,962 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-28 05:46:50,161 WARN L477 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-28 05:46:50,161 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:46:50,161 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:46:50,161 INFO L85 PathProgramCache]: Analyzing trace with hash -663071842, now seen corresponding path program 7 times [2022-04-28 05:46:50,161 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:46:50,161 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1773978533] [2022-04-28 05:46:50,162 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:46:50,162 INFO L85 PathProgramCache]: Analyzing trace with hash -663071842, now seen corresponding path program 8 times [2022-04-28 05:46:50,162 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:46:50,162 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1110864755] [2022-04-28 05:46:50,162 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:46:50,162 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:46:50,171 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:46:50,172 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1420701991] [2022-04-28 05:46:50,172 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:46:50,172 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:46:50,172 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:46:50,173 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-28 05:46:50,174 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-28 05:46:50,217 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:46:50,217 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:46:50,218 INFO L263 TraceCheckSpWp]: Trace formula consists of 262 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:46:50,230 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:46:50,231 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:46:50,427 INFO L272 TraceCheckUtils]: 0: Hoare triple {9802#true} call ULTIMATE.init(); {9802#true} is VALID [2022-04-28 05:46:50,427 INFO L290 TraceCheckUtils]: 1: Hoare triple {9802#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); {9802#true} is VALID [2022-04-28 05:46:50,427 INFO L290 TraceCheckUtils]: 2: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,427 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9802#true} {9802#true} #103#return; {9802#true} is VALID [2022-04-28 05:46:50,427 INFO L272 TraceCheckUtils]: 4: Hoare triple {9802#true} call #t~ret6 := main(); {9802#true} is VALID [2022-04-28 05:46:50,427 INFO L290 TraceCheckUtils]: 5: Hoare triple {9802#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {9802#true} is VALID [2022-04-28 05:46:50,427 INFO L272 TraceCheckUtils]: 6: Hoare triple {9802#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,427 INFO L290 TraceCheckUtils]: 7: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,427 INFO L290 TraceCheckUtils]: 8: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,427 INFO L290 TraceCheckUtils]: 9: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,427 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9802#true} {9802#true} #79#return; {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L290 TraceCheckUtils]: 11: Hoare triple {9802#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L272 TraceCheckUtils]: 12: Hoare triple {9802#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L290 TraceCheckUtils]: 13: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L290 TraceCheckUtils]: 14: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L290 TraceCheckUtils]: 15: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {9802#true} {9802#true} #81#return; {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L272 TraceCheckUtils]: 17: Hoare triple {9802#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L290 TraceCheckUtils]: 18: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L290 TraceCheckUtils]: 19: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L290 TraceCheckUtils]: 20: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {9802#true} {9802#true} #83#return; {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L272 TraceCheckUtils]: 22: Hoare triple {9802#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L290 TraceCheckUtils]: 23: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,428 INFO L290 TraceCheckUtils]: 24: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L290 TraceCheckUtils]: 25: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {9802#true} {9802#true} #85#return; {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L290 TraceCheckUtils]: 27: Hoare triple {9802#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L272 TraceCheckUtils]: 28: Hoare triple {9802#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L290 TraceCheckUtils]: 29: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L290 TraceCheckUtils]: 30: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L290 TraceCheckUtils]: 31: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {9802#true} {9802#true} #87#return; {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L272 TraceCheckUtils]: 33: Hoare triple {9802#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L290 TraceCheckUtils]: 34: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L290 TraceCheckUtils]: 35: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L290 TraceCheckUtils]: 36: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {9802#true} {9802#true} #89#return; {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L290 TraceCheckUtils]: 38: Hoare triple {9802#true} assume !false; {9802#true} is VALID [2022-04-28 05:46:50,429 INFO L290 TraceCheckUtils]: 39: Hoare triple {9802#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L290 TraceCheckUtils]: 40: Hoare triple {9802#true} assume !false; {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L272 TraceCheckUtils]: 41: Hoare triple {9802#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L290 TraceCheckUtils]: 42: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L290 TraceCheckUtils]: 43: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L290 TraceCheckUtils]: 44: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {9802#true} {9802#true} #91#return; {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L272 TraceCheckUtils]: 46: Hoare triple {9802#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L290 TraceCheckUtils]: 47: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L290 TraceCheckUtils]: 48: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L290 TraceCheckUtils]: 49: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {9802#true} {9802#true} #93#return; {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L272 TraceCheckUtils]: 51: Hoare triple {9802#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L290 TraceCheckUtils]: 52: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,430 INFO L290 TraceCheckUtils]: 53: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,431 INFO L290 TraceCheckUtils]: 54: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,431 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {9802#true} {9802#true} #95#return; {9802#true} is VALID [2022-04-28 05:46:50,431 INFO L272 TraceCheckUtils]: 56: Hoare triple {9802#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,431 INFO L290 TraceCheckUtils]: 57: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,431 INFO L290 TraceCheckUtils]: 58: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,431 INFO L290 TraceCheckUtils]: 59: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,431 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {9802#true} {9802#true} #97#return; {9802#true} is VALID [2022-04-28 05:46:50,431 INFO L290 TraceCheckUtils]: 61: Hoare triple {9802#true} assume !(~c~0 >= ~b~0); {9990#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:46:50,432 INFO L290 TraceCheckUtils]: 62: Hoare triple {9990#(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; {9994#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:46:50,432 INFO L290 TraceCheckUtils]: 63: Hoare triple {9994#(< main_~b~0 main_~a~0)} assume !false; {9994#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:46:50,432 INFO L290 TraceCheckUtils]: 64: Hoare triple {9994#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:46:50,433 INFO L290 TraceCheckUtils]: 65: Hoare triple {10001#(< main_~b~0 main_~c~0)} assume !false; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:46:50,433 INFO L272 TraceCheckUtils]: 66: Hoare triple {10001#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,433 INFO L290 TraceCheckUtils]: 67: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,433 INFO L290 TraceCheckUtils]: 68: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,433 INFO L290 TraceCheckUtils]: 69: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,434 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {9802#true} {10001#(< main_~b~0 main_~c~0)} #91#return; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:46:50,434 INFO L272 TraceCheckUtils]: 71: Hoare triple {10001#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,434 INFO L290 TraceCheckUtils]: 72: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,434 INFO L290 TraceCheckUtils]: 73: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,434 INFO L290 TraceCheckUtils]: 74: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,435 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {9802#true} {10001#(< main_~b~0 main_~c~0)} #93#return; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:46:50,435 INFO L272 TraceCheckUtils]: 76: Hoare triple {10001#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,435 INFO L290 TraceCheckUtils]: 77: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,435 INFO L290 TraceCheckUtils]: 78: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,435 INFO L290 TraceCheckUtils]: 79: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,435 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {9802#true} {10001#(< main_~b~0 main_~c~0)} #95#return; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:46:50,436 INFO L272 TraceCheckUtils]: 81: Hoare triple {10001#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {9802#true} is VALID [2022-04-28 05:46:50,436 INFO L290 TraceCheckUtils]: 82: Hoare triple {9802#true} ~cond := #in~cond; {9802#true} is VALID [2022-04-28 05:46:50,436 INFO L290 TraceCheckUtils]: 83: Hoare triple {9802#true} assume !(0 == ~cond); {9802#true} is VALID [2022-04-28 05:46:50,436 INFO L290 TraceCheckUtils]: 84: Hoare triple {9802#true} assume true; {9802#true} is VALID [2022-04-28 05:46:50,436 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {9802#true} {10001#(< main_~b~0 main_~c~0)} #97#return; {10001#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:46:50,437 INFO L290 TraceCheckUtils]: 86: Hoare triple {10001#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {9803#false} is VALID [2022-04-28 05:46:50,437 INFO L290 TraceCheckUtils]: 87: Hoare triple {9803#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; {9803#false} is VALID [2022-04-28 05:46:50,437 INFO L290 TraceCheckUtils]: 88: Hoare triple {9803#false} assume !false; {9803#false} is VALID [2022-04-28 05:46:50,437 INFO L290 TraceCheckUtils]: 89: Hoare triple {9803#false} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {9803#false} is VALID [2022-04-28 05:46:50,437 INFO L290 TraceCheckUtils]: 90: Hoare triple {9803#false} assume !false; {9803#false} is VALID [2022-04-28 05:46:50,437 INFO L272 TraceCheckUtils]: 91: Hoare triple {9803#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9803#false} is VALID [2022-04-28 05:46:50,438 INFO L290 TraceCheckUtils]: 92: Hoare triple {9803#false} ~cond := #in~cond; {9803#false} is VALID [2022-04-28 05:46:50,438 INFO L290 TraceCheckUtils]: 93: Hoare triple {9803#false} assume !(0 == ~cond); {9803#false} is VALID [2022-04-28 05:46:50,438 INFO L290 TraceCheckUtils]: 94: Hoare triple {9803#false} assume true; {9803#false} is VALID [2022-04-28 05:46:50,438 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {9803#false} {9803#false} #91#return; {9803#false} is VALID [2022-04-28 05:46:50,438 INFO L272 TraceCheckUtils]: 96: Hoare triple {9803#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9803#false} is VALID [2022-04-28 05:46:50,438 INFO L290 TraceCheckUtils]: 97: Hoare triple {9803#false} ~cond := #in~cond; {9803#false} is VALID [2022-04-28 05:46:50,438 INFO L290 TraceCheckUtils]: 98: Hoare triple {9803#false} assume 0 == ~cond; {9803#false} is VALID [2022-04-28 05:46:50,438 INFO L290 TraceCheckUtils]: 99: Hoare triple {9803#false} assume !false; {9803#false} is VALID [2022-04-28 05:46:50,438 INFO L134 CoverageAnalysis]: Checked inductivity of 241 backedges. 67 proven. 0 refuted. 0 times theorem prover too weak. 174 trivial. 0 not checked. [2022-04-28 05:46:50,438 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:46:50,438 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:46:50,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1110864755] [2022-04-28 05:46:50,439 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:46:50,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1420701991] [2022-04-28 05:46:50,439 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1420701991] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:46:50,439 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:46:50,439 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:46:50,439 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:46:50,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1773978533] [2022-04-28 05:46:50,439 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1773978533] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:46:50,439 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:46:50,439 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:46:50,439 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2105091870] [2022-04-28 05:46:50,439 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:46:50,440 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) Word has length 100 [2022-04-28 05:46:50,440 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:46:50,440 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-28 05:46:50,489 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-28 05:46:50,489 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:46:50,489 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:46:50,489 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:46:50,489 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:46:50,490 INFO L87 Difference]: Start difference. First operand 153 states and 206 transitions. Second operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-28 05:46:50,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:46:50,966 INFO L93 Difference]: Finished difference Result 201 states and 280 transitions. [2022-04-28 05:46:50,966 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:46:50,966 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) Word has length 100 [2022-04-28 05:46:50,966 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:46:50,967 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-28 05:46:50,968 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2022-04-28 05:46:50,968 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-28 05:46:50,969 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 94 transitions. [2022-04-28 05:46:50,969 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 94 transitions. [2022-04-28 05:46:51,031 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:46:51,033 INFO L225 Difference]: With dead ends: 201 [2022-04-28 05:46:51,033 INFO L226 Difference]: Without dead ends: 156 [2022-04-28 05:46:51,034 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 96 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-28 05:46:51,034 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 6 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 74 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:46:51,034 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 163 Invalid, 74 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 69 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:46:51,035 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-04-28 05:46:51,257 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 147. [2022-04-28 05:46:51,257 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:46:51,258 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-28 05:46:51,258 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-28 05:46:51,258 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-28 05:46:51,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:46:51,261 INFO L93 Difference]: Finished difference Result 156 states and 209 transitions. [2022-04-28 05:46:51,261 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 209 transitions. [2022-04-28 05:46:51,262 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:46:51,262 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:46:51,262 INFO L74 IsIncluded]: Start isIncluded. First operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 156 states. [2022-04-28 05:46:51,262 INFO L87 Difference]: Start difference. First operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) Second operand 156 states. [2022-04-28 05:46:51,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:46:51,265 INFO L93 Difference]: Finished difference Result 156 states and 209 transitions. [2022-04-28 05:46:51,265 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 209 transitions. [2022-04-28 05:46:51,265 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:46:51,266 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:46:51,266 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:46:51,266 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:46:51,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 147 states, 78 states have (on average 1.1282051282051282) internal successors, (88), 80 states have internal predecessors, (88), 55 states have call successors, (55), 14 states have call predecessors, (55), 13 states have return successors, (52), 52 states have call predecessors, (52), 52 states have call successors, (52) [2022-04-28 05:46:51,270 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 147 states to 147 states and 195 transitions. [2022-04-28 05:46:51,270 INFO L78 Accepts]: Start accepts. Automaton has 147 states and 195 transitions. Word has length 100 [2022-04-28 05:46:51,271 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:46:51,271 INFO L495 AbstractCegarLoop]: Abstraction has 147 states and 195 transitions. [2022-04-28 05:46:51,271 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-28 05:46:51,271 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 147 states and 195 transitions. [2022-04-28 05:46:51,565 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 195 edges. 195 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:46:51,566 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 195 transitions. [2022-04-28 05:46:51,566 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-28 05:46:51,566 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:46:51,566 INFO L195 NwaCegarLoop]: trace histogram [12, 11, 11, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:46:51,583 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-28 05:46:51,769 WARN L477 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-28 05:46:51,769 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:46:51,769 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:46:51,769 INFO L85 PathProgramCache]: Analyzing trace with hash -428114403, now seen corresponding path program 1 times [2022-04-28 05:46:51,769 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:46:51,769 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [279729342] [2022-04-28 05:46:51,770 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:46:51,770 INFO L85 PathProgramCache]: Analyzing trace with hash -428114403, now seen corresponding path program 2 times [2022-04-28 05:46:51,770 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:46:51,770 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1323772161] [2022-04-28 05:46:51,770 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:46:51,770 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:46:51,782 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:46:51,783 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [647998129] [2022-04-28 05:46:51,783 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:46:51,783 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:46:51,783 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:46:51,784 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-28 05:46:51,784 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-28 05:46:51,833 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:46:51,833 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:46:51,834 INFO L263 TraceCheckSpWp]: Trace formula consists of 264 conjuncts, 66 conjunts are in the unsatisfiable core [2022-04-28 05:46:51,852 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:46:51,854 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:46:53,298 INFO L272 TraceCheckUtils]: 0: Hoare triple {11118#true} call ULTIMATE.init(); {11118#true} is VALID [2022-04-28 05:46:53,298 INFO L290 TraceCheckUtils]: 1: Hoare triple {11118#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); {11118#true} is VALID [2022-04-28 05:46:53,298 INFO L290 TraceCheckUtils]: 2: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,298 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11118#true} {11118#true} #103#return; {11118#true} is VALID [2022-04-28 05:46:53,298 INFO L272 TraceCheckUtils]: 4: Hoare triple {11118#true} call #t~ret6 := main(); {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L290 TraceCheckUtils]: 5: Hoare triple {11118#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L272 TraceCheckUtils]: 6: Hoare triple {11118#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L290 TraceCheckUtils]: 7: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L290 TraceCheckUtils]: 8: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L290 TraceCheckUtils]: 9: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11118#true} {11118#true} #79#return; {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L290 TraceCheckUtils]: 11: Hoare triple {11118#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L272 TraceCheckUtils]: 12: Hoare triple {11118#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L290 TraceCheckUtils]: 13: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L290 TraceCheckUtils]: 14: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L290 TraceCheckUtils]: 15: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11118#true} {11118#true} #81#return; {11118#true} is VALID [2022-04-28 05:46:53,299 INFO L272 TraceCheckUtils]: 17: Hoare triple {11118#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:46:53,315 INFO L290 TraceCheckUtils]: 18: Hoare triple {11118#true} ~cond := #in~cond; {11177#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:46:53,316 INFO L290 TraceCheckUtils]: 19: Hoare triple {11177#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {11181#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:46:53,316 INFO L290 TraceCheckUtils]: 20: Hoare triple {11181#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {11181#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:46:53,316 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11181#(not (= |assume_abort_if_not_#in~cond| 0))} {11118#true} #83#return; {11188#(<= 1 main_~x~0)} is VALID [2022-04-28 05:46:53,316 INFO L272 TraceCheckUtils]: 22: Hoare triple {11188#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:46:53,317 INFO L290 TraceCheckUtils]: 23: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,317 INFO L290 TraceCheckUtils]: 24: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,317 INFO L290 TraceCheckUtils]: 25: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,317 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11118#true} {11188#(<= 1 main_~x~0)} #85#return; {11188#(<= 1 main_~x~0)} is VALID [2022-04-28 05:46:53,317 INFO L290 TraceCheckUtils]: 27: Hoare triple {11188#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {11207#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,318 INFO L272 TraceCheckUtils]: 28: Hoare triple {11207#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:46:53,318 INFO L290 TraceCheckUtils]: 29: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,318 INFO L290 TraceCheckUtils]: 30: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,318 INFO L290 TraceCheckUtils]: 31: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,318 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {11118#true} {11207#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {11207#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,318 INFO L272 TraceCheckUtils]: 33: Hoare triple {11207#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:46:53,318 INFO L290 TraceCheckUtils]: 34: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,318 INFO L290 TraceCheckUtils]: 35: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,318 INFO L290 TraceCheckUtils]: 36: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,319 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {11118#true} {11207#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {11207#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,319 INFO L290 TraceCheckUtils]: 38: Hoare triple {11207#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {11207#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,320 INFO L290 TraceCheckUtils]: 39: Hoare triple {11207#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,320 INFO L290 TraceCheckUtils]: 40: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,321 INFO L272 TraceCheckUtils]: 41: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {11118#true} is VALID [2022-04-28 05:46:53,321 INFO L290 TraceCheckUtils]: 42: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,321 INFO L290 TraceCheckUtils]: 43: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,321 INFO L290 TraceCheckUtils]: 44: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,322 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {11118#true} {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,322 INFO L272 TraceCheckUtils]: 46: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {11118#true} is VALID [2022-04-28 05:46:53,322 INFO L290 TraceCheckUtils]: 47: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,322 INFO L290 TraceCheckUtils]: 48: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,322 INFO L290 TraceCheckUtils]: 49: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,322 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {11118#true} {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,322 INFO L272 TraceCheckUtils]: 51: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {11118#true} is VALID [2022-04-28 05:46:53,323 INFO L290 TraceCheckUtils]: 52: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,323 INFO L290 TraceCheckUtils]: 53: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,323 INFO L290 TraceCheckUtils]: 54: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,323 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11118#true} {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,323 INFO L272 TraceCheckUtils]: 56: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:46:53,323 INFO L290 TraceCheckUtils]: 57: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,323 INFO L290 TraceCheckUtils]: 58: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,323 INFO L290 TraceCheckUtils]: 59: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,324 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {11118#true} {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,325 INFO L290 TraceCheckUtils]: 61: Hoare triple {11244#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {11311#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,326 INFO L290 TraceCheckUtils]: 62: Hoare triple {11311#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {11311#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,326 INFO L272 TraceCheckUtils]: 63: Hoare triple {11311#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {11118#true} is VALID [2022-04-28 05:46:53,326 INFO L290 TraceCheckUtils]: 64: Hoare triple {11118#true} ~cond := #in~cond; {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:46:53,326 INFO L290 TraceCheckUtils]: 65: Hoare triple {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:46:53,326 INFO L290 TraceCheckUtils]: 66: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:46:53,328 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11311#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,328 INFO L272 TraceCheckUtils]: 68: Hoare triple {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {11118#true} is VALID [2022-04-28 05:46:53,328 INFO L290 TraceCheckUtils]: 69: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,328 INFO L290 TraceCheckUtils]: 70: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,328 INFO L290 TraceCheckUtils]: 71: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,328 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {11118#true} {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #93#return; {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,329 INFO L272 TraceCheckUtils]: 73: Hoare triple {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {11118#true} is VALID [2022-04-28 05:46:53,329 INFO L290 TraceCheckUtils]: 74: Hoare triple {11118#true} ~cond := #in~cond; {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:46:53,329 INFO L290 TraceCheckUtils]: 75: Hoare triple {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:46:53,329 INFO L290 TraceCheckUtils]: 76: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:46:53,330 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #95#return; {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,330 INFO L272 TraceCheckUtils]: 78: Hoare triple {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:46:53,330 INFO L290 TraceCheckUtils]: 79: Hoare triple {11118#true} ~cond := #in~cond; {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:46:53,331 INFO L290 TraceCheckUtils]: 80: Hoare triple {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:46:53,331 INFO L290 TraceCheckUtils]: 81: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:46:53,331 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #97#return; {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,332 INFO L290 TraceCheckUtils]: 83: Hoare triple {11332#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {11381#(and (= main_~r~0 0) (<= main_~y~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (< main_~c~0 main_~y~0) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (= main_~p~0 1))} is VALID [2022-04-28 05:46:53,333 INFO L290 TraceCheckUtils]: 84: Hoare triple {11381#(and (= main_~r~0 0) (<= main_~y~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (< main_~c~0 main_~y~0) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~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; {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 05:46:53,333 INFO L290 TraceCheckUtils]: 85: Hoare triple {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} assume !false; {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 05:46:53,334 INFO L290 TraceCheckUtils]: 86: Hoare triple {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 05:46:53,334 INFO L290 TraceCheckUtils]: 87: Hoare triple {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} assume !false; {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 05:46:53,334 INFO L272 TraceCheckUtils]: 88: Hoare triple {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:46:53,334 INFO L290 TraceCheckUtils]: 89: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,334 INFO L290 TraceCheckUtils]: 90: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,334 INFO L290 TraceCheckUtils]: 91: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,335 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {11118#true} {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #91#return; {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 05:46:53,335 INFO L272 TraceCheckUtils]: 93: Hoare triple {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:46:53,335 INFO L290 TraceCheckUtils]: 94: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:46:53,335 INFO L290 TraceCheckUtils]: 95: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:46:53,335 INFO L290 TraceCheckUtils]: 96: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:46:53,336 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {11118#true} {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #93#return; {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 05:46:53,336 INFO L272 TraceCheckUtils]: 98: Hoare triple {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:46:53,336 INFO L290 TraceCheckUtils]: 99: Hoare triple {11118#true} ~cond := #in~cond; {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:46:53,336 INFO L290 TraceCheckUtils]: 100: Hoare triple {11321#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:46:53,336 INFO L290 TraceCheckUtils]: 101: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:46:53,337 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #95#return; {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 05:46:53,339 INFO L272 TraceCheckUtils]: 103: Hoare triple {11385#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {11443#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:46:53,339 INFO L290 TraceCheckUtils]: 104: Hoare triple {11443#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11447#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:46:53,339 INFO L290 TraceCheckUtils]: 105: Hoare triple {11447#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11119#false} is VALID [2022-04-28 05:46:53,339 INFO L290 TraceCheckUtils]: 106: Hoare triple {11119#false} assume !false; {11119#false} is VALID [2022-04-28 05:46:53,340 INFO L134 CoverageAnalysis]: Checked inductivity of 320 backedges. 87 proven. 52 refuted. 0 times theorem prover too weak. 181 trivial. 0 not checked. [2022-04-28 05:46:53,340 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:49:05,770 INFO L290 TraceCheckUtils]: 106: Hoare triple {11119#false} assume !false; {11119#false} is VALID [2022-04-28 05:49:05,771 INFO L290 TraceCheckUtils]: 105: Hoare triple {11447#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11119#false} is VALID [2022-04-28 05:49:05,771 INFO L290 TraceCheckUtils]: 104: Hoare triple {11443#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11447#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:49:05,772 INFO L272 TraceCheckUtils]: 103: Hoare triple {11463#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {11443#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:49:05,773 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {11463#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))} is VALID [2022-04-28 05:49:05,773 INFO L290 TraceCheckUtils]: 101: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:05,773 INFO L290 TraceCheckUtils]: 100: Hoare triple {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:05,773 INFO L290 TraceCheckUtils]: 99: Hoare triple {11118#true} ~cond := #in~cond; {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:49:05,774 INFO L272 TraceCheckUtils]: 98: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {11118#true} is VALID [2022-04-28 05:49:05,774 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {11118#true} {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #93#return; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:49:05,774 INFO L290 TraceCheckUtils]: 96: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:05,774 INFO L290 TraceCheckUtils]: 95: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:05,774 INFO L290 TraceCheckUtils]: 94: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:05,774 INFO L272 TraceCheckUtils]: 93: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {11118#true} is VALID [2022-04-28 05:49:05,775 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {11118#true} {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #91#return; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:49:05,775 INFO L290 TraceCheckUtils]: 91: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:05,775 INFO L290 TraceCheckUtils]: 90: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:05,775 INFO L290 TraceCheckUtils]: 89: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:05,775 INFO L272 TraceCheckUtils]: 88: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {11118#true} is VALID [2022-04-28 05:49:05,776 INFO L290 TraceCheckUtils]: 87: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:49:05,776 INFO L290 TraceCheckUtils]: 86: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:49:05,777 INFO L290 TraceCheckUtils]: 85: Hoare triple {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:49:07,778 WARN L290 TraceCheckUtils]: 84: Hoare triple {11523#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} ~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; {11467#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is UNKNOWN [2022-04-28 05:49:07,779 INFO L290 TraceCheckUtils]: 83: Hoare triple {11527#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} assume !(~c~0 >= ~b~0); {11523#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-28 05:49:07,780 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11531#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} #97#return; {11527#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-28 05:49:07,780 INFO L290 TraceCheckUtils]: 81: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:07,780 INFO L290 TraceCheckUtils]: 80: Hoare triple {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:07,781 INFO L290 TraceCheckUtils]: 79: Hoare triple {11118#true} ~cond := #in~cond; {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:49:07,781 INFO L272 TraceCheckUtils]: 78: Hoare triple {11531#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:07,782 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} #95#return; {11531#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-28 05:49:07,782 INFO L290 TraceCheckUtils]: 76: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:07,782 INFO L290 TraceCheckUtils]: 75: Hoare triple {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:07,783 INFO L290 TraceCheckUtils]: 74: Hoare triple {11118#true} ~cond := #in~cond; {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:49:07,783 INFO L272 TraceCheckUtils]: 73: Hoare triple {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:07,784 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {11118#true} {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} #93#return; {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-28 05:49:07,784 INFO L290 TraceCheckUtils]: 71: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:07,784 INFO L290 TraceCheckUtils]: 70: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:07,784 INFO L290 TraceCheckUtils]: 69: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:07,784 INFO L272 TraceCheckUtils]: 68: Hoare triple {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:07,785 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} {11578#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #91#return; {11547#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-28 05:49:07,785 INFO L290 TraceCheckUtils]: 66: Hoare triple {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:07,786 INFO L290 TraceCheckUtils]: 65: Hoare triple {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {11325#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:07,786 INFO L290 TraceCheckUtils]: 64: Hoare triple {11118#true} ~cond := #in~cond; {11477#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:49:07,786 INFO L272 TraceCheckUtils]: 63: Hoare triple {11578#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:07,787 INFO L290 TraceCheckUtils]: 62: Hoare triple {11578#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} assume !false; {11578#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-28 05:49:09,788 WARN L290 TraceCheckUtils]: 61: Hoare triple {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {11578#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (+ (* (+ (* (* 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_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is UNKNOWN [2022-04-28 05:49:09,789 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {11118#true} {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} #97#return; {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:49:09,789 INFO L290 TraceCheckUtils]: 59: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:09,789 INFO L290 TraceCheckUtils]: 58: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:09,789 INFO L290 TraceCheckUtils]: 57: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:09,790 INFO L272 TraceCheckUtils]: 56: Hoare triple {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:09,790 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11118#true} {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} #95#return; {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:49:09,790 INFO L290 TraceCheckUtils]: 54: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:09,790 INFO L290 TraceCheckUtils]: 53: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:09,791 INFO L290 TraceCheckUtils]: 52: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:09,791 INFO L272 TraceCheckUtils]: 51: Hoare triple {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:09,791 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {11118#true} {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} #93#return; {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:49:09,791 INFO L290 TraceCheckUtils]: 49: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:09,791 INFO L290 TraceCheckUtils]: 48: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:09,792 INFO L290 TraceCheckUtils]: 47: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:09,792 INFO L272 TraceCheckUtils]: 46: Hoare triple {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:09,792 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {11118#true} {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} #91#return; {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:49:09,792 INFO L290 TraceCheckUtils]: 44: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:09,792 INFO L290 TraceCheckUtils]: 43: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:09,793 INFO L290 TraceCheckUtils]: 42: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:09,793 INFO L272 TraceCheckUtils]: 41: Hoare triple {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:09,793 INFO L290 TraceCheckUtils]: 40: Hoare triple {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} assume !false; {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:49:09,794 INFO L290 TraceCheckUtils]: 39: Hoare triple {11664#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {11597#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (<= (* main_~b~0 2) main_~c~0) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* 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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (<= main_~b~0 main_~c~0)))} is VALID [2022-04-28 05:49:09,795 INFO L290 TraceCheckUtils]: 38: Hoare triple {11664#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} assume !false; {11664#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 05:49:09,796 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {11118#true} {11664#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} #89#return; {11664#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 05:49:09,796 INFO L290 TraceCheckUtils]: 36: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:09,796 INFO L290 TraceCheckUtils]: 35: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:09,796 INFO L290 TraceCheckUtils]: 34: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:09,796 INFO L272 TraceCheckUtils]: 33: Hoare triple {11664#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:09,797 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {11118#true} {11664#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} #87#return; {11664#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 05:49:09,797 INFO L290 TraceCheckUtils]: 31: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:09,797 INFO L290 TraceCheckUtils]: 30: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:09,797 INFO L290 TraceCheckUtils]: 29: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:09,797 INFO L272 TraceCheckUtils]: 28: Hoare triple {11664#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:09,798 INFO L290 TraceCheckUtils]: 27: Hoare triple {11118#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {11664#(or (not (<= main_~b~0 main_~a~0)) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 05:49:09,798 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11118#true} {11118#true} #85#return; {11118#true} is VALID [2022-04-28 05:49:09,798 INFO L290 TraceCheckUtils]: 25: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:09,798 INFO L290 TraceCheckUtils]: 24: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:09,798 INFO L290 TraceCheckUtils]: 23: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:09,798 INFO L272 TraceCheckUtils]: 22: Hoare triple {11118#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:09,798 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11118#true} {11118#true} #83#return; {11118#true} is VALID [2022-04-28 05:49:09,798 INFO L290 TraceCheckUtils]: 20: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L290 TraceCheckUtils]: 19: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L290 TraceCheckUtils]: 18: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L272 TraceCheckUtils]: 17: Hoare triple {11118#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11118#true} {11118#true} #81#return; {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L290 TraceCheckUtils]: 15: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L290 TraceCheckUtils]: 14: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L290 TraceCheckUtils]: 13: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L272 TraceCheckUtils]: 12: Hoare triple {11118#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L290 TraceCheckUtils]: 11: Hoare triple {11118#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11118#true} {11118#true} #79#return; {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L290 TraceCheckUtils]: 9: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L290 TraceCheckUtils]: 8: Hoare triple {11118#true} assume !(0 == ~cond); {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L290 TraceCheckUtils]: 7: Hoare triple {11118#true} ~cond := #in~cond; {11118#true} is VALID [2022-04-28 05:49:09,799 INFO L272 TraceCheckUtils]: 6: Hoare triple {11118#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {11118#true} is VALID [2022-04-28 05:49:09,800 INFO L290 TraceCheckUtils]: 5: Hoare triple {11118#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {11118#true} is VALID [2022-04-28 05:49:09,800 INFO L272 TraceCheckUtils]: 4: Hoare triple {11118#true} call #t~ret6 := main(); {11118#true} is VALID [2022-04-28 05:49:09,800 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11118#true} {11118#true} #103#return; {11118#true} is VALID [2022-04-28 05:49:09,800 INFO L290 TraceCheckUtils]: 2: Hoare triple {11118#true} assume true; {11118#true} is VALID [2022-04-28 05:49:09,800 INFO L290 TraceCheckUtils]: 1: Hoare triple {11118#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); {11118#true} is VALID [2022-04-28 05:49:09,800 INFO L272 TraceCheckUtils]: 0: Hoare triple {11118#true} call ULTIMATE.init(); {11118#true} is VALID [2022-04-28 05:49:09,800 INFO L134 CoverageAnalysis]: Checked inductivity of 320 backedges. 81 proven. 43 refuted. 0 times theorem prover too weak. 196 trivial. 0 not checked. [2022-04-28 05:49:09,801 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:49:09,801 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1323772161] [2022-04-28 05:49:09,801 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:49:09,801 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [647998129] [2022-04-28 05:49:09,801 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [647998129] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:49:09,801 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:49:09,801 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 25 [2022-04-28 05:49:09,801 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:49:09,801 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [279729342] [2022-04-28 05:49:09,801 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [279729342] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:49:09,801 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:49:09,801 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 05:49:09,801 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [263537490] [2022-04-28 05:49:09,801 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:49:09,802 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) Word has length 107 [2022-04-28 05:49:09,802 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:49:09,802 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-28 05:49:09,866 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:49:09,867 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 05:49:09,867 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:49:09,867 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 05:49:09,867 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=475, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:49:09,867 INFO L87 Difference]: Start difference. First operand 147 states and 195 transitions. Second operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-28 05:49:15,238 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:49:15,238 INFO L93 Difference]: Finished difference Result 154 states and 201 transitions. [2022-04-28 05:49:15,238 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:49:15,238 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) Word has length 107 [2022-04-28 05:49:15,238 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:49:15,238 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-28 05:49:15,239 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 103 transitions. [2022-04-28 05:49:15,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-28 05:49:15,241 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 103 transitions. [2022-04-28 05:49:15,241 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 103 transitions. [2022-04-28 05:49:15,357 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:49:15,359 INFO L225 Difference]: With dead ends: 154 [2022-04-28 05:49:15,359 INFO L226 Difference]: Without dead ends: 152 [2022-04-28 05:49:15,360 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 217 GetRequests, 188 SyntacticMatches, 2 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 181 ImplicationChecksByTransitivity, 11.4s TimeCoverageRelationStatistics Valid=158, Invalid=654, Unknown=0, NotChecked=0, Total=812 [2022-04-28 05:49:15,360 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 38 mSDsluCounter, 160 mSDsCounter, 0 mSdLazyCounter, 605 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 197 SdHoareTripleChecker+Invalid, 641 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 605 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:49:15,360 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 197 Invalid, 641 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 605 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-28 05:49:15,361 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 152 states. [2022-04-28 05:49:15,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 152 to 128. [2022-04-28 05:49:15,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:49:15,564 INFO L82 GeneralOperation]: Start isEquivalent. First operand 152 states. Second operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:49:15,564 INFO L74 IsIncluded]: Start isIncluded. First operand 152 states. Second operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:49:15,565 INFO L87 Difference]: Start difference. First operand 152 states. Second operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:49:15,567 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:49:15,568 INFO L93 Difference]: Finished difference Result 152 states and 199 transitions. [2022-04-28 05:49:15,568 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 199 transitions. [2022-04-28 05:49:15,568 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:49:15,568 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:49:15,568 INFO L74 IsIncluded]: Start isIncluded. First operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 152 states. [2022-04-28 05:49:15,569 INFO L87 Difference]: Start difference. First operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) Second operand 152 states. [2022-04-28 05:49:15,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:49:15,571 INFO L93 Difference]: Finished difference Result 152 states and 199 transitions. [2022-04-28 05:49:15,571 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 199 transitions. [2022-04-28 05:49:15,572 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:49:15,572 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:49:15,572 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:49:15,572 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:49:15,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 128 states, 68 states have (on average 1.1323529411764706) internal successors, (77), 70 states have internal predecessors, (77), 47 states have call successors, (47), 13 states have call predecessors, (47), 12 states have return successors, (44), 44 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 05:49:15,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 128 states and 168 transitions. [2022-04-28 05:49:15,574 INFO L78 Accepts]: Start accepts. Automaton has 128 states and 168 transitions. Word has length 107 [2022-04-28 05:49:15,574 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:49:15,575 INFO L495 AbstractCegarLoop]: Abstraction has 128 states and 168 transitions. [2022-04-28 05:49:15,575 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.0) internal successors, (30), 12 states have internal predecessors, (30), 7 states have call successors, (20), 2 states have call predecessors, (20), 3 states have return successors, (18), 6 states have call predecessors, (18), 7 states have call successors, (18) [2022-04-28 05:49:15,575 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 128 states and 168 transitions. [2022-04-28 05:49:15,868 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 168 edges. 168 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:49:15,868 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 168 transitions. [2022-04-28 05:49:15,869 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-28 05:49:15,869 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:49:15,869 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:49:15,885 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-28 05:49:16,083 WARN L477 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-28 05:49:16,083 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:49:16,083 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:49:16,084 INFO L85 PathProgramCache]: Analyzing trace with hash 1185765869, now seen corresponding path program 3 times [2022-04-28 05:49:16,084 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:49:16,084 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1179226686] [2022-04-28 05:49:16,084 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:49:16,084 INFO L85 PathProgramCache]: Analyzing trace with hash 1185765869, now seen corresponding path program 4 times [2022-04-28 05:49:16,084 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:49:16,084 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2031391355] [2022-04-28 05:49:16,084 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:49:16,084 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:49:16,096 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:49:16,096 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [353282569] [2022-04-28 05:49:16,096 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:49:16,096 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:49:16,096 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:49:16,097 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-28 05:49:16,098 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-28 05:49:16,149 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:49:16,149 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:49:16,150 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 49 conjunts are in the unsatisfiable core [2022-04-28 05:49:16,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:49:16,168 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:49:17,249 INFO L272 TraceCheckUtils]: 0: Hoare triple {12660#true} call ULTIMATE.init(); {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L290 TraceCheckUtils]: 1: Hoare triple {12660#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); {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L290 TraceCheckUtils]: 2: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12660#true} {12660#true} #103#return; {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L272 TraceCheckUtils]: 4: Hoare triple {12660#true} call #t~ret6 := main(); {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L290 TraceCheckUtils]: 5: Hoare triple {12660#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L272 TraceCheckUtils]: 6: Hoare triple {12660#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L290 TraceCheckUtils]: 7: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L290 TraceCheckUtils]: 8: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L290 TraceCheckUtils]: 9: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12660#true} {12660#true} #79#return; {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L290 TraceCheckUtils]: 11: Hoare triple {12660#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12660#true} is VALID [2022-04-28 05:49:17,250 INFO L272 TraceCheckUtils]: 12: Hoare triple {12660#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L290 TraceCheckUtils]: 13: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L290 TraceCheckUtils]: 14: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L290 TraceCheckUtils]: 15: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {12660#true} {12660#true} #81#return; {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L272 TraceCheckUtils]: 17: Hoare triple {12660#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L290 TraceCheckUtils]: 18: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L290 TraceCheckUtils]: 19: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L290 TraceCheckUtils]: 20: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {12660#true} {12660#true} #83#return; {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L272 TraceCheckUtils]: 22: Hoare triple {12660#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L290 TraceCheckUtils]: 23: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L290 TraceCheckUtils]: 24: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L290 TraceCheckUtils]: 25: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,251 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {12660#true} {12660#true} #85#return; {12660#true} is VALID [2022-04-28 05:49:17,252 INFO L290 TraceCheckUtils]: 27: Hoare triple {12660#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {12746#(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-28 05:49:17,252 INFO L272 TraceCheckUtils]: 28: Hoare triple {12746#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,253 INFO L290 TraceCheckUtils]: 29: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,253 INFO L290 TraceCheckUtils]: 30: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,253 INFO L290 TraceCheckUtils]: 31: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,255 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {12660#true} {12746#(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))} #87#return; {12746#(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-28 05:49:17,255 INFO L272 TraceCheckUtils]: 33: Hoare triple {12746#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,255 INFO L290 TraceCheckUtils]: 34: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,259 INFO L290 TraceCheckUtils]: 35: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,260 INFO L290 TraceCheckUtils]: 36: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,262 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {12660#true} {12746#(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))} #89#return; {12746#(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-28 05:49:17,262 INFO L290 TraceCheckUtils]: 38: Hoare triple {12746#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {12746#(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-28 05:49:17,262 INFO L290 TraceCheckUtils]: 39: Hoare triple {12746#(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);~c~0 := ~a~0;~k~0 := 0; {12783#(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-28 05:49:17,263 INFO L290 TraceCheckUtils]: 40: Hoare triple {12783#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {12783#(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-28 05:49:17,263 INFO L272 TraceCheckUtils]: 41: Hoare triple {12783#(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))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,263 INFO L290 TraceCheckUtils]: 42: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,263 INFO L290 TraceCheckUtils]: 43: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,263 INFO L290 TraceCheckUtils]: 44: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,264 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {12660#true} {12783#(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))} #91#return; {12783#(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-28 05:49:17,264 INFO L272 TraceCheckUtils]: 46: Hoare triple {12783#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,264 INFO L290 TraceCheckUtils]: 47: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,264 INFO L290 TraceCheckUtils]: 48: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,264 INFO L290 TraceCheckUtils]: 49: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,265 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {12660#true} {12783#(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))} #93#return; {12783#(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-28 05:49:17,265 INFO L272 TraceCheckUtils]: 51: Hoare triple {12783#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,265 INFO L290 TraceCheckUtils]: 52: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,265 INFO L290 TraceCheckUtils]: 53: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,265 INFO L290 TraceCheckUtils]: 54: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,265 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12660#true} {12783#(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))} #95#return; {12783#(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-28 05:49:17,266 INFO L272 TraceCheckUtils]: 56: Hoare triple {12783#(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))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,266 INFO L290 TraceCheckUtils]: 57: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,266 INFO L290 TraceCheckUtils]: 58: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,266 INFO L290 TraceCheckUtils]: 59: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,266 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {12660#true} {12783#(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))} #97#return; {12783#(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-28 05:49:17,268 INFO L290 TraceCheckUtils]: 61: Hoare triple {12783#(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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,268 INFO L290 TraceCheckUtils]: 62: Hoare triple {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,268 INFO L272 TraceCheckUtils]: 63: Hoare triple {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~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)); {12660#true} is VALID [2022-04-28 05:49:17,268 INFO L290 TraceCheckUtils]: 64: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,268 INFO L290 TraceCheckUtils]: 65: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,268 INFO L290 TraceCheckUtils]: 66: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,282 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {12660#true} {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,282 INFO L272 TraceCheckUtils]: 68: Hoare triple {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~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)); {12660#true} is VALID [2022-04-28 05:49:17,282 INFO L290 TraceCheckUtils]: 69: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,283 INFO L290 TraceCheckUtils]: 70: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,283 INFO L290 TraceCheckUtils]: 71: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,283 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {12660#true} {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,283 INFO L272 TraceCheckUtils]: 73: Hoare triple {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~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)); {12660#true} is VALID [2022-04-28 05:49:17,283 INFO L290 TraceCheckUtils]: 74: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,284 INFO L290 TraceCheckUtils]: 75: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,284 INFO L290 TraceCheckUtils]: 76: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,284 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {12660#true} {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,284 INFO L272 TraceCheckUtils]: 78: Hoare triple {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,284 INFO L290 TraceCheckUtils]: 79: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,284 INFO L290 TraceCheckUtils]: 80: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,285 INFO L290 TraceCheckUtils]: 81: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,285 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {12660#true} {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,286 INFO L290 TraceCheckUtils]: 83: Hoare triple {12850#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {12917#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,287 INFO L290 TraceCheckUtils]: 84: Hoare triple {12917#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {12917#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,287 INFO L272 TraceCheckUtils]: 85: Hoare triple {12917#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,287 INFO L290 TraceCheckUtils]: 86: Hoare triple {12660#true} ~cond := #in~cond; {12927#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:49:17,287 INFO L290 TraceCheckUtils]: 87: Hoare triple {12927#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:17,288 INFO L290 TraceCheckUtils]: 88: Hoare triple {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:17,288 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} {12917#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {12917#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,288 INFO L272 TraceCheckUtils]: 90: Hoare triple {12917#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,289 INFO L290 TraceCheckUtils]: 91: Hoare triple {12660#true} ~cond := #in~cond; {12927#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:49:17,289 INFO L290 TraceCheckUtils]: 92: Hoare triple {12927#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:17,289 INFO L290 TraceCheckUtils]: 93: Hoare triple {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:49:17,290 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} {12917#(and (= main_~r~0 0) (= (+ (- 1) main_~k~0) 1) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {12953#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,290 INFO L272 TraceCheckUtils]: 95: Hoare triple {12953#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~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)); {12660#true} is VALID [2022-04-28 05:49:17,290 INFO L290 TraceCheckUtils]: 96: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,290 INFO L290 TraceCheckUtils]: 97: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,290 INFO L290 TraceCheckUtils]: 98: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,291 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {12660#true} {12953#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #95#return; {12953#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,291 INFO L272 TraceCheckUtils]: 100: Hoare triple {12953#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:49:17,291 INFO L290 TraceCheckUtils]: 101: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:49:17,291 INFO L290 TraceCheckUtils]: 102: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:49:17,291 INFO L290 TraceCheckUtils]: 103: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:49:17,292 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {12660#true} {12953#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} #97#return; {12953#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,292 INFO L290 TraceCheckUtils]: 105: Hoare triple {12953#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {12987#(and (= main_~r~0 0) (= main_~s~0 1) (not (<= main_~y~0 main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 2))) (<= 0 main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:49:17,293 INFO L290 TraceCheckUtils]: 106: Hoare triple {12987#(and (= main_~r~0 0) (= main_~s~0 1) (not (<= main_~y~0 main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 (* main_~y~0 2))) (<= 0 main_~c~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; {12991#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~s~0 2) 0) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= main_~q~0 1))} is VALID [2022-04-28 05:49:17,294 INFO L290 TraceCheckUtils]: 107: Hoare triple {12991#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~s~0 2) 0) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= main_~q~0 1))} assume !false; {12991#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~s~0 2) 0) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= main_~q~0 1))} is VALID [2022-04-28 05:49:17,294 INFO L290 TraceCheckUtils]: 108: Hoare triple {12991#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~s~0 2) 0) (not (<= main_~y~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= main_~q~0 1))} assume !(0 != ~b~0); {12998#(and (= (+ main_~s~0 2) 0) (< (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~y~0) (= main_~q~0 1) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-28 05:49:17,295 INFO L272 TraceCheckUtils]: 109: Hoare triple {12998#(and (= (+ main_~s~0 2) 0) (< (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~y~0) (= main_~q~0 1) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {13002#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:49:17,295 INFO L290 TraceCheckUtils]: 110: Hoare triple {13002#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13006#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:49:17,295 INFO L290 TraceCheckUtils]: 111: Hoare triple {13006#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12661#false} is VALID [2022-04-28 05:49:17,296 INFO L290 TraceCheckUtils]: 112: Hoare triple {12661#false} assume !false; {12661#false} is VALID [2022-04-28 05:49:17,296 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 70 proven. 34 refuted. 0 times theorem prover too weak. 264 trivial. 0 not checked. [2022-04-28 05:49:17,296 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:50:43,762 INFO L290 TraceCheckUtils]: 112: Hoare triple {12661#false} assume !false; {12661#false} is VALID [2022-04-28 05:50:43,763 INFO L290 TraceCheckUtils]: 111: Hoare triple {13006#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12661#false} is VALID [2022-04-28 05:50:43,763 INFO L290 TraceCheckUtils]: 110: Hoare triple {13002#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13006#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:43,764 INFO L272 TraceCheckUtils]: 109: Hoare triple {13022#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {13002#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:43,764 INFO L290 TraceCheckUtils]: 108: Hoare triple {13026#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {13022#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-28 05:50:43,765 INFO L290 TraceCheckUtils]: 107: Hoare triple {13026#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {13026#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-28 05:50:45,766 WARN L290 TraceCheckUtils]: 106: Hoare triple {13033#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 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; {13026#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is UNKNOWN [2022-04-28 05:50:45,767 INFO L290 TraceCheckUtils]: 105: Hoare triple {13037#(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_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !(~c~0 >= ~b~0); {13033#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-28 05:50:45,767 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {12660#true} {13037#(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_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #97#return; {13037#(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_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 05:50:45,768 INFO L290 TraceCheckUtils]: 103: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,768 INFO L290 TraceCheckUtils]: 102: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,768 INFO L290 TraceCheckUtils]: 101: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,768 INFO L272 TraceCheckUtils]: 100: Hoare triple {13037#(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_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,768 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {12660#true} {13037#(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_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #95#return; {13037#(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_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 05:50:45,768 INFO L290 TraceCheckUtils]: 98: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,769 INFO L290 TraceCheckUtils]: 97: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,769 INFO L290 TraceCheckUtils]: 96: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,769 INFO L272 TraceCheckUtils]: 95: Hoare triple {13037#(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_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,771 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} {13071#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* 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)) 0))} #93#return; {13037#(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_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 05:50:45,771 INFO L290 TraceCheckUtils]: 93: Hoare triple {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:50:45,772 INFO L290 TraceCheckUtils]: 92: Hoare triple {13081#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:50:45,772 INFO L290 TraceCheckUtils]: 91: Hoare triple {12660#true} ~cond := #in~cond; {13081#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:50:45,772 INFO L272 TraceCheckUtils]: 90: Hoare triple {13071#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* 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)) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,773 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} {13088#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ (* (+ (* (* 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)) 0))} #91#return; {13071#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-28 05:50:45,773 INFO L290 TraceCheckUtils]: 88: Hoare triple {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:50:45,773 INFO L290 TraceCheckUtils]: 87: Hoare triple {13081#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {12931#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:50:45,774 INFO L290 TraceCheckUtils]: 86: Hoare triple {12660#true} ~cond := #in~cond; {13081#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:50:45,774 INFO L272 TraceCheckUtils]: 85: Hoare triple {13088#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ (* (+ (* (* 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)) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,774 INFO L290 TraceCheckUtils]: 84: Hoare triple {13088#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ (* (+ (* (* 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)) 0))} assume !false; {13088#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-28 05:50:45,942 INFO L290 TraceCheckUtils]: 83: Hoare triple {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {13088#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-28 05:50:45,943 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {12660#true} {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} #97#return; {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-28 05:50:45,943 INFO L290 TraceCheckUtils]: 81: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,943 INFO L290 TraceCheckUtils]: 80: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,943 INFO L290 TraceCheckUtils]: 79: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,943 INFO L272 TraceCheckUtils]: 78: Hoare triple {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,944 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {12660#true} {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} #95#return; {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-28 05:50:45,944 INFO L290 TraceCheckUtils]: 76: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,944 INFO L290 TraceCheckUtils]: 75: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,944 INFO L290 TraceCheckUtils]: 74: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,944 INFO L272 TraceCheckUtils]: 73: Hoare triple {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,945 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {12660#true} {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} #93#return; {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-28 05:50:45,945 INFO L290 TraceCheckUtils]: 71: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,945 INFO L290 TraceCheckUtils]: 70: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,945 INFO L290 TraceCheckUtils]: 69: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,945 INFO L272 TraceCheckUtils]: 68: Hoare triple {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,946 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {12660#true} {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} #91#return; {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-28 05:50:45,946 INFO L290 TraceCheckUtils]: 66: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,946 INFO L290 TraceCheckUtils]: 65: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,946 INFO L290 TraceCheckUtils]: 64: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,946 INFO L272 TraceCheckUtils]: 63: Hoare triple {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,946 INFO L290 TraceCheckUtils]: 62: Hoare triple {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} assume !false; {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-28 05:50:45,990 INFO L290 TraceCheckUtils]: 61: Hoare triple {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {13107#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)) (not (= main_~a~0 (+ main_~b~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-28 05:50:45,991 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {12660#true} {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:50:45,991 INFO L290 TraceCheckUtils]: 59: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,991 INFO L290 TraceCheckUtils]: 58: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,991 INFO L290 TraceCheckUtils]: 57: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,991 INFO L272 TraceCheckUtils]: 56: Hoare triple {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,992 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12660#true} {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:50:45,992 INFO L290 TraceCheckUtils]: 54: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,992 INFO L290 TraceCheckUtils]: 53: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,992 INFO L290 TraceCheckUtils]: 52: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,992 INFO L272 TraceCheckUtils]: 51: Hoare triple {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {12660#true} is VALID [2022-04-28 05:50:45,993 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {12660#true} {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:50:45,993 INFO L290 TraceCheckUtils]: 49: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,993 INFO L290 TraceCheckUtils]: 48: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,993 INFO L290 TraceCheckUtils]: 47: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,993 INFO L272 TraceCheckUtils]: 46: Hoare triple {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {12660#true} is VALID [2022-04-28 05:50:45,994 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {12660#true} {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:50:45,994 INFO L290 TraceCheckUtils]: 44: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,994 INFO L290 TraceCheckUtils]: 43: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,994 INFO L290 TraceCheckUtils]: 42: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,994 INFO L272 TraceCheckUtils]: 41: Hoare triple {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {12660#true} is VALID [2022-04-28 05:50:45,995 INFO L290 TraceCheckUtils]: 40: Hoare triple {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:50:45,995 INFO L290 TraceCheckUtils]: 39: Hoare triple {13241#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {13174#(or (not (= (+ main_~b~0 (* (+ main_~k~0 1) main_~b~0)) main_~a~0)) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:50:45,996 INFO L290 TraceCheckUtils]: 38: Hoare triple {13241#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {13241#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:50:45,996 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {12660#true} {13241#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #89#return; {13241#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:50:45,996 INFO L290 TraceCheckUtils]: 36: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,996 INFO L290 TraceCheckUtils]: 35: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,996 INFO L290 TraceCheckUtils]: 34: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,996 INFO L272 TraceCheckUtils]: 33: Hoare triple {13241#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,997 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {12660#true} {13241#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #87#return; {13241#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:50:45,997 INFO L290 TraceCheckUtils]: 31: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,997 INFO L290 TraceCheckUtils]: 30: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,997 INFO L290 TraceCheckUtils]: 29: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,997 INFO L272 TraceCheckUtils]: 28: Hoare triple {13241#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,998 INFO L290 TraceCheckUtils]: 27: Hoare triple {12660#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {13241#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 0) (= (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:50:45,998 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {12660#true} {12660#true} #85#return; {12660#true} is VALID [2022-04-28 05:50:45,998 INFO L290 TraceCheckUtils]: 25: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,998 INFO L290 TraceCheckUtils]: 24: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,998 INFO L290 TraceCheckUtils]: 23: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,998 INFO L272 TraceCheckUtils]: 22: Hoare triple {12660#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,998 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {12660#true} {12660#true} #83#return; {12660#true} is VALID [2022-04-28 05:50:45,998 INFO L290 TraceCheckUtils]: 20: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,998 INFO L290 TraceCheckUtils]: 19: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,998 INFO L290 TraceCheckUtils]: 18: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L272 TraceCheckUtils]: 17: Hoare triple {12660#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {12660#true} {12660#true} #81#return; {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L290 TraceCheckUtils]: 15: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L290 TraceCheckUtils]: 14: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L290 TraceCheckUtils]: 13: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L272 TraceCheckUtils]: 12: Hoare triple {12660#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L290 TraceCheckUtils]: 11: Hoare triple {12660#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12660#true} {12660#true} #79#return; {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L290 TraceCheckUtils]: 9: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L290 TraceCheckUtils]: 8: Hoare triple {12660#true} assume !(0 == ~cond); {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L290 TraceCheckUtils]: 7: Hoare triple {12660#true} ~cond := #in~cond; {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L272 TraceCheckUtils]: 6: Hoare triple {12660#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L290 TraceCheckUtils]: 5: Hoare triple {12660#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {12660#true} is VALID [2022-04-28 05:50:45,999 INFO L272 TraceCheckUtils]: 4: Hoare triple {12660#true} call #t~ret6 := main(); {12660#true} is VALID [2022-04-28 05:50:46,000 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12660#true} {12660#true} #103#return; {12660#true} is VALID [2022-04-28 05:50:46,000 INFO L290 TraceCheckUtils]: 2: Hoare triple {12660#true} assume true; {12660#true} is VALID [2022-04-28 05:50:46,000 INFO L290 TraceCheckUtils]: 1: Hoare triple {12660#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); {12660#true} is VALID [2022-04-28 05:50:46,000 INFO L272 TraceCheckUtils]: 0: Hoare triple {12660#true} call ULTIMATE.init(); {12660#true} is VALID [2022-04-28 05:50:46,000 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 70 proven. 34 refuted. 0 times theorem prover too weak. 264 trivial. 0 not checked. [2022-04-28 05:50:46,000 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:46,000 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2031391355] [2022-04-28 05:50:46,000 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:46,001 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [353282569] [2022-04-28 05:50:46,001 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [353282569] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:50:46,001 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:50:46,001 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 15] total 24 [2022-04-28 05:50:46,001 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:46,001 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1179226686] [2022-04-28 05:50:46,001 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1179226686] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:46,001 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:46,001 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 05:50:46,001 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1180943113] [2022-04-28 05:50:46,001 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:46,002 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) Word has length 113 [2022-04-28 05:50:46,002 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:46,002 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-28 05:50:46,073 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:46,073 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 05:50:46,073 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:46,073 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 05:50:46,074 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=110, Invalid=442, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:50:46,074 INFO L87 Difference]: Start difference. First operand 128 states and 168 transitions. Second operand has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-28 05:50:49,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:49,369 INFO L93 Difference]: Finished difference Result 162 states and 215 transitions. [2022-04-28 05:50:49,370 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 05:50:49,370 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) Word has length 113 [2022-04-28 05:50:49,370 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:49,370 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-28 05:50:49,371 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 117 transitions. [2022-04-28 05:50:49,371 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-28 05:50:49,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 117 transitions. [2022-04-28 05:50:49,372 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 117 transitions. [2022-04-28 05:50:49,500 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:49,502 INFO L225 Difference]: With dead ends: 162 [2022-04-28 05:50:49,502 INFO L226 Difference]: Without dead ends: 159 [2022-04-28 05:50:49,503 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 229 GetRequests, 201 SyntacticMatches, 2 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 146 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=149, Invalid=607, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:50:49,503 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 31 mSDsluCounter, 240 mSDsCounter, 0 mSdLazyCounter, 629 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 291 SdHoareTripleChecker+Invalid, 659 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 629 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:49,503 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [42 Valid, 291 Invalid, 659 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 629 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-28 05:50:49,504 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 159 states. [2022-04-28 05:50:49,776 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 159 to 157. [2022-04-28 05:50:49,777 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:49,777 INFO L82 GeneralOperation]: Start isEquivalent. First operand 159 states. Second operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-28 05:50:49,777 INFO L74 IsIncluded]: Start isIncluded. First operand 159 states. Second operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-28 05:50:49,777 INFO L87 Difference]: Start difference. First operand 159 states. Second operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-28 05:50:49,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:49,780 INFO L93 Difference]: Finished difference Result 159 states and 211 transitions. [2022-04-28 05:50:49,780 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 211 transitions. [2022-04-28 05:50:49,781 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:49,781 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:49,781 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) Second operand 159 states. [2022-04-28 05:50:49,781 INFO L87 Difference]: Start difference. First operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) Second operand 159 states. [2022-04-28 05:50:49,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:49,784 INFO L93 Difference]: Finished difference Result 159 states and 211 transitions. [2022-04-28 05:50:49,784 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 211 transitions. [2022-04-28 05:50:49,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:49,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:49,785 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:49,785 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:49,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 83 states have (on average 1.1325301204819278) internal successors, (94), 85 states have internal predecessors, (94), 59 states have call successors, (59), 15 states have call predecessors, (59), 14 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-28 05:50:49,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 209 transitions. [2022-04-28 05:50:49,789 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 209 transitions. Word has length 113 [2022-04-28 05:50:49,789 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:49,789 INFO L495 AbstractCegarLoop]: Abstraction has 157 states and 209 transitions. [2022-04-28 05:50:49,789 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 7 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-28 05:50:49,789 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 157 states and 209 transitions. [2022-04-28 05:50:50,158 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 209 edges. 209 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:50,158 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 209 transitions. [2022-04-28 05:50:50,159 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-28 05:50:50,159 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:50,159 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:50,181 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-28 05:50:50,375 WARN L477 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-28 05:50:50,375 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:50,376 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:50,376 INFO L85 PathProgramCache]: Analyzing trace with hash 884638574, now seen corresponding path program 5 times [2022-04-28 05:50:50,376 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:50,376 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1061156647] [2022-04-28 05:50:50,376 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:50,376 INFO L85 PathProgramCache]: Analyzing trace with hash 884638574, now seen corresponding path program 6 times [2022-04-28 05:50:50,376 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:50,376 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [39141801] [2022-04-28 05:50:50,376 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:50,377 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:50,386 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:50,386 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [311238421] [2022-04-28 05:50:50,386 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:50:50,386 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:50,386 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:50,387 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-28 05:50:50,417 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-28 05:50:50,449 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 05:50:50,449 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:50,450 INFO L263 TraceCheckSpWp]: Trace formula consists of 255 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:50:50,465 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:50,466 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:50,741 INFO L272 TraceCheckUtils]: 0: Hoare triple {14325#true} call ULTIMATE.init(); {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L290 TraceCheckUtils]: 1: Hoare triple {14325#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); {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L290 TraceCheckUtils]: 2: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14325#true} {14325#true} #103#return; {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L272 TraceCheckUtils]: 4: Hoare triple {14325#true} call #t~ret6 := main(); {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L290 TraceCheckUtils]: 5: Hoare triple {14325#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L272 TraceCheckUtils]: 6: Hoare triple {14325#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L290 TraceCheckUtils]: 7: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L290 TraceCheckUtils]: 8: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L290 TraceCheckUtils]: 9: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14325#true} {14325#true} #79#return; {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L290 TraceCheckUtils]: 11: Hoare triple {14325#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14325#true} is VALID [2022-04-28 05:50:50,742 INFO L272 TraceCheckUtils]: 12: Hoare triple {14325#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L290 TraceCheckUtils]: 13: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L290 TraceCheckUtils]: 14: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L290 TraceCheckUtils]: 15: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {14325#true} {14325#true} #81#return; {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L272 TraceCheckUtils]: 17: Hoare triple {14325#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L290 TraceCheckUtils]: 18: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L290 TraceCheckUtils]: 19: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L290 TraceCheckUtils]: 20: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14325#true} {14325#true} #83#return; {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L272 TraceCheckUtils]: 22: Hoare triple {14325#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L290 TraceCheckUtils]: 23: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L290 TraceCheckUtils]: 24: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L290 TraceCheckUtils]: 25: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,743 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14325#true} {14325#true} #85#return; {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L290 TraceCheckUtils]: 27: Hoare triple {14325#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L272 TraceCheckUtils]: 28: Hoare triple {14325#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L290 TraceCheckUtils]: 29: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L290 TraceCheckUtils]: 30: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L290 TraceCheckUtils]: 31: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {14325#true} {14325#true} #87#return; {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L272 TraceCheckUtils]: 33: Hoare triple {14325#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L290 TraceCheckUtils]: 34: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L290 TraceCheckUtils]: 35: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L290 TraceCheckUtils]: 36: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {14325#true} {14325#true} #89#return; {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L290 TraceCheckUtils]: 38: Hoare triple {14325#true} assume !false; {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L290 TraceCheckUtils]: 39: Hoare triple {14325#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L290 TraceCheckUtils]: 40: Hoare triple {14325#true} assume !false; {14325#true} is VALID [2022-04-28 05:50:50,744 INFO L272 TraceCheckUtils]: 41: Hoare triple {14325#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L290 TraceCheckUtils]: 42: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L290 TraceCheckUtils]: 43: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L290 TraceCheckUtils]: 44: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {14325#true} {14325#true} #91#return; {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L272 TraceCheckUtils]: 46: Hoare triple {14325#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L290 TraceCheckUtils]: 47: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L290 TraceCheckUtils]: 48: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L290 TraceCheckUtils]: 49: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {14325#true} {14325#true} #93#return; {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L272 TraceCheckUtils]: 51: Hoare triple {14325#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L290 TraceCheckUtils]: 52: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L290 TraceCheckUtils]: 53: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L290 TraceCheckUtils]: 54: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14325#true} {14325#true} #95#return; {14325#true} is VALID [2022-04-28 05:50:50,745 INFO L272 TraceCheckUtils]: 56: Hoare triple {14325#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,746 INFO L290 TraceCheckUtils]: 57: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,746 INFO L290 TraceCheckUtils]: 58: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,746 INFO L290 TraceCheckUtils]: 59: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,746 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14325#true} {14325#true} #97#return; {14325#true} is VALID [2022-04-28 05:50:50,746 INFO L290 TraceCheckUtils]: 61: Hoare triple {14325#true} assume !(~c~0 >= ~b~0); {14513#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:50:50,746 INFO L290 TraceCheckUtils]: 62: Hoare triple {14513#(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; {14517#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:50:50,747 INFO L290 TraceCheckUtils]: 63: Hoare triple {14517#(< main_~b~0 main_~a~0)} assume !false; {14517#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:50:50,747 INFO L290 TraceCheckUtils]: 64: Hoare triple {14517#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:50,747 INFO L290 TraceCheckUtils]: 65: Hoare triple {14524#(< main_~b~0 main_~c~0)} assume !false; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:50,747 INFO L272 TraceCheckUtils]: 66: Hoare triple {14524#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,747 INFO L290 TraceCheckUtils]: 67: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,747 INFO L290 TraceCheckUtils]: 68: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,748 INFO L290 TraceCheckUtils]: 69: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,748 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {14325#true} {14524#(< main_~b~0 main_~c~0)} #91#return; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:50,748 INFO L272 TraceCheckUtils]: 71: Hoare triple {14524#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,748 INFO L290 TraceCheckUtils]: 72: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,748 INFO L290 TraceCheckUtils]: 73: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,748 INFO L290 TraceCheckUtils]: 74: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,749 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {14325#true} {14524#(< main_~b~0 main_~c~0)} #93#return; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:50,749 INFO L272 TraceCheckUtils]: 76: Hoare triple {14524#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,749 INFO L290 TraceCheckUtils]: 77: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,749 INFO L290 TraceCheckUtils]: 78: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,749 INFO L290 TraceCheckUtils]: 79: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,750 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {14325#true} {14524#(< main_~b~0 main_~c~0)} #95#return; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:50,750 INFO L272 TraceCheckUtils]: 81: Hoare triple {14524#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,750 INFO L290 TraceCheckUtils]: 82: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,750 INFO L290 TraceCheckUtils]: 83: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,750 INFO L290 TraceCheckUtils]: 84: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,750 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {14325#true} {14524#(< main_~b~0 main_~c~0)} #97#return; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:50,751 INFO L290 TraceCheckUtils]: 86: Hoare triple {14524#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:50,751 INFO L290 TraceCheckUtils]: 87: Hoare triple {14591#(< 0 main_~c~0)} assume !false; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:50,751 INFO L272 TraceCheckUtils]: 88: Hoare triple {14591#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,752 INFO L290 TraceCheckUtils]: 89: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,752 INFO L290 TraceCheckUtils]: 90: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,752 INFO L290 TraceCheckUtils]: 91: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,752 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {14325#true} {14591#(< 0 main_~c~0)} #91#return; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:50,752 INFO L272 TraceCheckUtils]: 93: Hoare triple {14591#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,752 INFO L290 TraceCheckUtils]: 94: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,752 INFO L290 TraceCheckUtils]: 95: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,752 INFO L290 TraceCheckUtils]: 96: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,753 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {14325#true} {14591#(< 0 main_~c~0)} #93#return; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:50,753 INFO L272 TraceCheckUtils]: 98: Hoare triple {14591#(< 0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,753 INFO L290 TraceCheckUtils]: 99: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,753 INFO L290 TraceCheckUtils]: 100: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,753 INFO L290 TraceCheckUtils]: 101: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,754 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {14325#true} {14591#(< 0 main_~c~0)} #95#return; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:50,754 INFO L272 TraceCheckUtils]: 103: Hoare triple {14591#(< 0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:50,754 INFO L290 TraceCheckUtils]: 104: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:50,754 INFO L290 TraceCheckUtils]: 105: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:50,754 INFO L290 TraceCheckUtils]: 106: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:50,754 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {14325#true} {14591#(< 0 main_~c~0)} #97#return; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:50,755 INFO L290 TraceCheckUtils]: 108: Hoare triple {14591#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:50,755 INFO L290 TraceCheckUtils]: 109: Hoare triple {14591#(< 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; {14661#(< 0 main_~b~0)} is VALID [2022-04-28 05:50:50,755 INFO L290 TraceCheckUtils]: 110: Hoare triple {14661#(< 0 main_~b~0)} assume !false; {14661#(< 0 main_~b~0)} is VALID [2022-04-28 05:50:50,756 INFO L290 TraceCheckUtils]: 111: Hoare triple {14661#(< 0 main_~b~0)} assume !(0 != ~b~0); {14326#false} is VALID [2022-04-28 05:50:50,756 INFO L272 TraceCheckUtils]: 112: Hoare triple {14326#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {14326#false} is VALID [2022-04-28 05:50:50,756 INFO L290 TraceCheckUtils]: 113: Hoare triple {14326#false} ~cond := #in~cond; {14326#false} is VALID [2022-04-28 05:50:50,756 INFO L290 TraceCheckUtils]: 114: Hoare triple {14326#false} assume 0 == ~cond; {14326#false} is VALID [2022-04-28 05:50:50,756 INFO L290 TraceCheckUtils]: 115: Hoare triple {14326#false} assume !false; {14326#false} is VALID [2022-04-28 05:50:50,756 INFO L134 CoverageAnalysis]: Checked inductivity of 373 backedges. 40 proven. 9 refuted. 0 times theorem prover too weak. 324 trivial. 0 not checked. [2022-04-28 05:50:50,756 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:50:51,051 INFO L290 TraceCheckUtils]: 115: Hoare triple {14326#false} assume !false; {14326#false} is VALID [2022-04-28 05:50:51,052 INFO L290 TraceCheckUtils]: 114: Hoare triple {14326#false} assume 0 == ~cond; {14326#false} is VALID [2022-04-28 05:50:51,052 INFO L290 TraceCheckUtils]: 113: Hoare triple {14326#false} ~cond := #in~cond; {14326#false} is VALID [2022-04-28 05:50:51,052 INFO L272 TraceCheckUtils]: 112: Hoare triple {14326#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {14326#false} is VALID [2022-04-28 05:50:51,052 INFO L290 TraceCheckUtils]: 111: Hoare triple {14661#(< 0 main_~b~0)} assume !(0 != ~b~0); {14326#false} is VALID [2022-04-28 05:50:51,052 INFO L290 TraceCheckUtils]: 110: Hoare triple {14661#(< 0 main_~b~0)} assume !false; {14661#(< 0 main_~b~0)} is VALID [2022-04-28 05:50:51,053 INFO L290 TraceCheckUtils]: 109: Hoare triple {14591#(< 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; {14661#(< 0 main_~b~0)} is VALID [2022-04-28 05:50:51,053 INFO L290 TraceCheckUtils]: 108: Hoare triple {14591#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:51,054 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {14325#true} {14591#(< 0 main_~c~0)} #97#return; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:51,054 INFO L290 TraceCheckUtils]: 106: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,054 INFO L290 TraceCheckUtils]: 105: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,054 INFO L290 TraceCheckUtils]: 104: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,054 INFO L272 TraceCheckUtils]: 103: Hoare triple {14591#(< 0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,054 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {14325#true} {14591#(< 0 main_~c~0)} #95#return; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:51,054 INFO L290 TraceCheckUtils]: 101: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,055 INFO L290 TraceCheckUtils]: 100: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,055 INFO L290 TraceCheckUtils]: 99: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,055 INFO L272 TraceCheckUtils]: 98: Hoare triple {14591#(< 0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,055 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {14325#true} {14591#(< 0 main_~c~0)} #93#return; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:51,055 INFO L290 TraceCheckUtils]: 96: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,055 INFO L290 TraceCheckUtils]: 95: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,055 INFO L290 TraceCheckUtils]: 94: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,055 INFO L272 TraceCheckUtils]: 93: Hoare triple {14591#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,056 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {14325#true} {14591#(< 0 main_~c~0)} #91#return; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:51,056 INFO L290 TraceCheckUtils]: 91: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,056 INFO L290 TraceCheckUtils]: 90: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,056 INFO L290 TraceCheckUtils]: 89: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,056 INFO L272 TraceCheckUtils]: 88: Hoare triple {14591#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,056 INFO L290 TraceCheckUtils]: 87: Hoare triple {14591#(< 0 main_~c~0)} assume !false; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:51,057 INFO L290 TraceCheckUtils]: 86: Hoare triple {14524#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14591#(< 0 main_~c~0)} is VALID [2022-04-28 05:50:51,058 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {14325#true} {14524#(< main_~b~0 main_~c~0)} #97#return; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:51,058 INFO L290 TraceCheckUtils]: 84: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,058 INFO L290 TraceCheckUtils]: 83: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,058 INFO L290 TraceCheckUtils]: 82: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,058 INFO L272 TraceCheckUtils]: 81: Hoare triple {14524#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,059 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {14325#true} {14524#(< main_~b~0 main_~c~0)} #95#return; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:51,059 INFO L290 TraceCheckUtils]: 79: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,059 INFO L290 TraceCheckUtils]: 78: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,059 INFO L290 TraceCheckUtils]: 77: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,059 INFO L272 TraceCheckUtils]: 76: Hoare triple {14524#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,060 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {14325#true} {14524#(< main_~b~0 main_~c~0)} #93#return; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:51,060 INFO L290 TraceCheckUtils]: 74: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,060 INFO L290 TraceCheckUtils]: 73: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,060 INFO L290 TraceCheckUtils]: 72: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,060 INFO L272 TraceCheckUtils]: 71: Hoare triple {14524#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,060 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {14325#true} {14524#(< main_~b~0 main_~c~0)} #91#return; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:51,060 INFO L290 TraceCheckUtils]: 69: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,061 INFO L290 TraceCheckUtils]: 68: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,061 INFO L290 TraceCheckUtils]: 67: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,061 INFO L272 TraceCheckUtils]: 66: Hoare triple {14524#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,061 INFO L290 TraceCheckUtils]: 65: Hoare triple {14524#(< main_~b~0 main_~c~0)} assume !false; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:51,061 INFO L290 TraceCheckUtils]: 64: Hoare triple {14517#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14524#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:51,062 INFO L290 TraceCheckUtils]: 63: Hoare triple {14517#(< main_~b~0 main_~a~0)} assume !false; {14517#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:50:51,062 INFO L290 TraceCheckUtils]: 62: Hoare triple {14513#(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; {14517#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:50:51,062 INFO L290 TraceCheckUtils]: 61: Hoare triple {14325#true} assume !(~c~0 >= ~b~0); {14513#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:50:51,062 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14325#true} {14325#true} #97#return; {14325#true} is VALID [2022-04-28 05:50:51,062 INFO L290 TraceCheckUtils]: 59: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L290 TraceCheckUtils]: 58: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L290 TraceCheckUtils]: 57: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L272 TraceCheckUtils]: 56: Hoare triple {14325#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14325#true} {14325#true} #95#return; {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L290 TraceCheckUtils]: 54: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L290 TraceCheckUtils]: 53: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L290 TraceCheckUtils]: 52: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L272 TraceCheckUtils]: 51: Hoare triple {14325#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {14325#true} {14325#true} #93#return; {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L290 TraceCheckUtils]: 49: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L290 TraceCheckUtils]: 48: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L290 TraceCheckUtils]: 47: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L272 TraceCheckUtils]: 46: Hoare triple {14325#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {14325#true} {14325#true} #91#return; {14325#true} is VALID [2022-04-28 05:50:51,063 INFO L290 TraceCheckUtils]: 44: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L290 TraceCheckUtils]: 43: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L290 TraceCheckUtils]: 42: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L272 TraceCheckUtils]: 41: Hoare triple {14325#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L290 TraceCheckUtils]: 40: Hoare triple {14325#true} assume !false; {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L290 TraceCheckUtils]: 39: Hoare triple {14325#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L290 TraceCheckUtils]: 38: Hoare triple {14325#true} assume !false; {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {14325#true} {14325#true} #89#return; {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L290 TraceCheckUtils]: 36: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L290 TraceCheckUtils]: 35: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L290 TraceCheckUtils]: 34: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L272 TraceCheckUtils]: 33: Hoare triple {14325#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {14325#true} {14325#true} #87#return; {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L290 TraceCheckUtils]: 31: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L290 TraceCheckUtils]: 30: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,064 INFO L290 TraceCheckUtils]: 29: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L272 TraceCheckUtils]: 28: Hoare triple {14325#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L290 TraceCheckUtils]: 27: Hoare triple {14325#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14325#true} {14325#true} #85#return; {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L290 TraceCheckUtils]: 25: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L290 TraceCheckUtils]: 24: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L290 TraceCheckUtils]: 23: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L272 TraceCheckUtils]: 22: Hoare triple {14325#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14325#true} {14325#true} #83#return; {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L290 TraceCheckUtils]: 20: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L290 TraceCheckUtils]: 19: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L290 TraceCheckUtils]: 18: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L272 TraceCheckUtils]: 17: Hoare triple {14325#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {14325#true} {14325#true} #81#return; {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L290 TraceCheckUtils]: 15: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,065 INFO L290 TraceCheckUtils]: 14: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L290 TraceCheckUtils]: 13: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L272 TraceCheckUtils]: 12: Hoare triple {14325#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L290 TraceCheckUtils]: 11: Hoare triple {14325#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14325#true} {14325#true} #79#return; {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L290 TraceCheckUtils]: 9: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L290 TraceCheckUtils]: 8: Hoare triple {14325#true} assume !(0 == ~cond); {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L290 TraceCheckUtils]: 7: Hoare triple {14325#true} ~cond := #in~cond; {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L272 TraceCheckUtils]: 6: Hoare triple {14325#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L290 TraceCheckUtils]: 5: Hoare triple {14325#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L272 TraceCheckUtils]: 4: Hoare triple {14325#true} call #t~ret6 := main(); {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14325#true} {14325#true} #103#return; {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L290 TraceCheckUtils]: 2: Hoare triple {14325#true} assume true; {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L290 TraceCheckUtils]: 1: Hoare triple {14325#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); {14325#true} is VALID [2022-04-28 05:50:51,066 INFO L272 TraceCheckUtils]: 0: Hoare triple {14325#true} call ULTIMATE.init(); {14325#true} is VALID [2022-04-28 05:50:51,067 INFO L134 CoverageAnalysis]: Checked inductivity of 373 backedges. 40 proven. 9 refuted. 0 times theorem prover too weak. 324 trivial. 0 not checked. [2022-04-28 05:50:51,067 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:51,067 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [39141801] [2022-04-28 05:50:51,067 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:51,067 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [311238421] [2022-04-28 05:50:51,067 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [311238421] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:50:51,067 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:50:51,067 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 7 [2022-04-28 05:50:51,067 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:51,067 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1061156647] [2022-04-28 05:50:51,068 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1061156647] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:51,068 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:51,068 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 05:50:51,068 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1902411026] [2022-04-28 05:50:51,068 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:51,068 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) Word has length 116 [2022-04-28 05:50:51,068 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:51,068 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) [2022-04-28 05:50:51,120 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:51,120 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 05:50:51,120 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:51,121 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 05:50:51,121 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-04-28 05:50:51,121 INFO L87 Difference]: Start difference. First operand 157 states and 209 transitions. Second operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) [2022-04-28 05:50:52,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:52,266 INFO L93 Difference]: Finished difference Result 211 states and 298 transitions. [2022-04-28 05:50:52,267 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:50:52,267 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) Word has length 116 [2022-04-28 05:50:52,267 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:52,267 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) [2022-04-28 05:50:52,269 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-28 05:50:52,269 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) [2022-04-28 05:50:52,270 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 126 transitions. [2022-04-28 05:50:52,270 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 126 transitions. [2022-04-28 05:50:52,402 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:52,406 INFO L225 Difference]: With dead ends: 211 [2022-04-28 05:50:52,406 INFO L226 Difference]: Without dead ends: 203 [2022-04-28 05:50:52,406 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 242 GetRequests, 227 SyntacticMatches, 2 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=62, Invalid=148, Unknown=0, NotChecked=0, Total=210 [2022-04-28 05:50:52,407 INFO L413 NwaCegarLoop]: 85 mSDtfsCounter, 14 mSDsluCounter, 195 mSDsCounter, 0 mSdLazyCounter, 205 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 280 SdHoareTripleChecker+Invalid, 245 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 205 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:52,407 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [19 Valid, 280 Invalid, 245 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 205 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:50:52,407 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 203 states. [2022-04-28 05:50:52,781 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 203 to 184. [2022-04-28 05:50:52,781 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:52,782 INFO L82 GeneralOperation]: Start isEquivalent. First operand 203 states. Second operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-28 05:50:52,782 INFO L74 IsIncluded]: Start isIncluded. First operand 203 states. Second operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-28 05:50:52,782 INFO L87 Difference]: Start difference. First operand 203 states. Second operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-28 05:50:52,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:52,787 INFO L93 Difference]: Finished difference Result 203 states and 289 transitions. [2022-04-28 05:50:52,787 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 289 transitions. [2022-04-28 05:50:52,788 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:52,788 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:52,788 INFO L74 IsIncluded]: Start isIncluded. First operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) Second operand 203 states. [2022-04-28 05:50:52,788 INFO L87 Difference]: Start difference. First operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) Second operand 203 states. [2022-04-28 05:50:52,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:52,793 INFO L93 Difference]: Finished difference Result 203 states and 289 transitions. [2022-04-28 05:50:52,793 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 289 transitions. [2022-04-28 05:50:52,793 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:52,793 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:52,793 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:52,794 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:52,794 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 184 states, 94 states have (on average 1.1595744680851063) internal successors, (109), 96 states have internal predecessors, (109), 75 states have call successors, (75), 15 states have call predecessors, (75), 14 states have return successors, (72), 72 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-28 05:50:52,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 184 states to 184 states and 256 transitions. [2022-04-28 05:50:52,798 INFO L78 Accepts]: Start accepts. Automaton has 184 states and 256 transitions. Word has length 116 [2022-04-28 05:50:52,798 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:52,798 INFO L495 AbstractCegarLoop]: Abstraction has 184 states and 256 transitions. [2022-04-28 05:50:52,798 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 7 states have internal predecessors, (28), 4 states have call successors, (21), 2 states have call predecessors, (21), 1 states have return successors, (19), 3 states have call predecessors, (19), 3 states have call successors, (19) [2022-04-28 05:50:52,798 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 184 states and 256 transitions. [2022-04-28 05:50:53,321 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 256 edges. 256 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:53,321 INFO L276 IsEmpty]: Start isEmpty. Operand 184 states and 256 transitions. [2022-04-28 05:50:53,322 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2022-04-28 05:50:53,322 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:53,322 INFO L195 NwaCegarLoop]: trace histogram [14, 13, 13, 6, 6, 6, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:53,338 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Ended with exit code 0 [2022-04-28 05:50:53,522 WARN L477 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-28 05:50:53,522 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:53,522 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:53,523 INFO L85 PathProgramCache]: Analyzing trace with hash -743412771, now seen corresponding path program 3 times [2022-04-28 05:50:53,523 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:53,523 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1084151579] [2022-04-28 05:50:53,523 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:53,523 INFO L85 PathProgramCache]: Analyzing trace with hash -743412771, now seen corresponding path program 4 times [2022-04-28 05:50:53,523 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:53,523 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [957825194] [2022-04-28 05:50:53,523 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:53,523 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:53,533 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:53,533 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1388085816] [2022-04-28 05:50:53,533 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:50:53,533 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:53,533 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:53,534 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-28 05:50:53,537 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-28 05:50:53,586 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:50:53,586 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:53,587 INFO L263 TraceCheckSpWp]: Trace formula consists of 257 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 05:50:53,602 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:53,603 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:53,843 INFO L272 TraceCheckUtils]: 0: Hoare triple {16242#true} call ULTIMATE.init(); {16242#true} is VALID [2022-04-28 05:50:53,843 INFO L290 TraceCheckUtils]: 1: Hoare triple {16242#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); {16242#true} is VALID [2022-04-28 05:50:53,843 INFO L290 TraceCheckUtils]: 2: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,843 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16242#true} {16242#true} #103#return; {16242#true} is VALID [2022-04-28 05:50:53,843 INFO L272 TraceCheckUtils]: 4: Hoare triple {16242#true} call #t~ret6 := main(); {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L290 TraceCheckUtils]: 5: Hoare triple {16242#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L272 TraceCheckUtils]: 6: Hoare triple {16242#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L290 TraceCheckUtils]: 7: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L290 TraceCheckUtils]: 8: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L290 TraceCheckUtils]: 9: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16242#true} {16242#true} #79#return; {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L290 TraceCheckUtils]: 11: Hoare triple {16242#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L272 TraceCheckUtils]: 12: Hoare triple {16242#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L290 TraceCheckUtils]: 13: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L290 TraceCheckUtils]: 14: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L290 TraceCheckUtils]: 15: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {16242#true} {16242#true} #81#return; {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L272 TraceCheckUtils]: 17: Hoare triple {16242#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,844 INFO L290 TraceCheckUtils]: 18: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L290 TraceCheckUtils]: 19: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L290 TraceCheckUtils]: 20: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {16242#true} {16242#true} #83#return; {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L272 TraceCheckUtils]: 22: Hoare triple {16242#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L290 TraceCheckUtils]: 23: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L290 TraceCheckUtils]: 24: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L290 TraceCheckUtils]: 25: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {16242#true} {16242#true} #85#return; {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L290 TraceCheckUtils]: 27: Hoare triple {16242#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L272 TraceCheckUtils]: 28: Hoare triple {16242#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L290 TraceCheckUtils]: 29: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L290 TraceCheckUtils]: 30: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,845 INFO L290 TraceCheckUtils]: 31: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {16242#true} {16242#true} #87#return; {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L272 TraceCheckUtils]: 33: Hoare triple {16242#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L290 TraceCheckUtils]: 34: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L290 TraceCheckUtils]: 35: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L290 TraceCheckUtils]: 36: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {16242#true} {16242#true} #89#return; {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L290 TraceCheckUtils]: 38: Hoare triple {16242#true} assume !false; {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L290 TraceCheckUtils]: 39: Hoare triple {16242#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L290 TraceCheckUtils]: 40: Hoare triple {16242#true} assume !false; {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L272 TraceCheckUtils]: 41: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L290 TraceCheckUtils]: 42: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L290 TraceCheckUtils]: 43: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,846 INFO L290 TraceCheckUtils]: 44: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,847 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {16242#true} {16242#true} #91#return; {16242#true} is VALID [2022-04-28 05:50:53,847 INFO L272 TraceCheckUtils]: 46: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,847 INFO L290 TraceCheckUtils]: 47: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,847 INFO L290 TraceCheckUtils]: 48: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,847 INFO L290 TraceCheckUtils]: 49: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,847 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {16242#true} {16242#true} #93#return; {16242#true} is VALID [2022-04-28 05:50:53,847 INFO L272 TraceCheckUtils]: 51: Hoare triple {16242#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,847 INFO L290 TraceCheckUtils]: 52: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,847 INFO L290 TraceCheckUtils]: 53: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,847 INFO L290 TraceCheckUtils]: 54: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,847 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {16242#true} {16242#true} #95#return; {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L272 TraceCheckUtils]: 56: Hoare triple {16242#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L290 TraceCheckUtils]: 57: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L290 TraceCheckUtils]: 58: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L290 TraceCheckUtils]: 59: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {16242#true} {16242#true} #97#return; {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L290 TraceCheckUtils]: 61: Hoare triple {16242#true} assume !(~c~0 >= ~b~0); {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L290 TraceCheckUtils]: 62: Hoare triple {16242#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; {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L290 TraceCheckUtils]: 63: Hoare triple {16242#true} assume !false; {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L290 TraceCheckUtils]: 64: Hoare triple {16242#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L290 TraceCheckUtils]: 65: Hoare triple {16242#true} assume !false; {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L272 TraceCheckUtils]: 66: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L290 TraceCheckUtils]: 67: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,848 INFO L290 TraceCheckUtils]: 68: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L290 TraceCheckUtils]: 69: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {16242#true} {16242#true} #91#return; {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L272 TraceCheckUtils]: 71: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L290 TraceCheckUtils]: 72: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L290 TraceCheckUtils]: 73: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L290 TraceCheckUtils]: 74: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {16242#true} {16242#true} #93#return; {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L272 TraceCheckUtils]: 76: Hoare triple {16242#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L290 TraceCheckUtils]: 77: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L290 TraceCheckUtils]: 78: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L290 TraceCheckUtils]: 79: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {16242#true} {16242#true} #95#return; {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L272 TraceCheckUtils]: 81: Hoare triple {16242#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,849 INFO L290 TraceCheckUtils]: 82: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L290 TraceCheckUtils]: 83: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L290 TraceCheckUtils]: 84: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {16242#true} {16242#true} #97#return; {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L290 TraceCheckUtils]: 86: Hoare triple {16242#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L290 TraceCheckUtils]: 87: Hoare triple {16242#true} assume !false; {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L272 TraceCheckUtils]: 88: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L290 TraceCheckUtils]: 89: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L290 TraceCheckUtils]: 90: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L290 TraceCheckUtils]: 91: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {16242#true} {16242#true} #91#return; {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L272 TraceCheckUtils]: 93: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L290 TraceCheckUtils]: 94: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,850 INFO L290 TraceCheckUtils]: 95: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,851 INFO L290 TraceCheckUtils]: 96: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,851 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {16242#true} {16242#true} #93#return; {16242#true} is VALID [2022-04-28 05:50:53,851 INFO L272 TraceCheckUtils]: 98: Hoare triple {16242#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,851 INFO L290 TraceCheckUtils]: 99: Hoare triple {16242#true} ~cond := #in~cond; {16544#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:53,851 INFO L290 TraceCheckUtils]: 100: Hoare triple {16544#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {16548#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:50:53,851 INFO L290 TraceCheckUtils]: 101: Hoare triple {16548#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {16548#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:50:53,852 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {16548#(not (= |__VERIFIER_assert_#in~cond| 0))} {16242#true} #95#return; {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:53,852 INFO L272 TraceCheckUtils]: 103: Hoare triple {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:50:53,852 INFO L290 TraceCheckUtils]: 104: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,852 INFO L290 TraceCheckUtils]: 105: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,852 INFO L290 TraceCheckUtils]: 106: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,853 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {16242#true} {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #97#return; {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:53,853 INFO L290 TraceCheckUtils]: 108: Hoare triple {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:53,854 INFO L290 TraceCheckUtils]: 109: Hoare triple {16555#(= 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; {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:53,854 INFO L290 TraceCheckUtils]: 110: Hoare triple {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:53,854 INFO L290 TraceCheckUtils]: 111: Hoare triple {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:53,855 INFO L290 TraceCheckUtils]: 112: Hoare triple {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:53,855 INFO L272 TraceCheckUtils]: 113: Hoare triple {16577#(= main_~a~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)); {16242#true} is VALID [2022-04-28 05:50:53,855 INFO L290 TraceCheckUtils]: 114: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:50:53,855 INFO L290 TraceCheckUtils]: 115: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:50:53,855 INFO L290 TraceCheckUtils]: 116: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:50:53,856 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {16242#true} {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #91#return; {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:53,856 INFO L272 TraceCheckUtils]: 118: Hoare triple {16577#(= 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)); {16605#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:53,857 INFO L290 TraceCheckUtils]: 119: Hoare triple {16605#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {16609#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:53,857 INFO L290 TraceCheckUtils]: 120: Hoare triple {16609#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16243#false} is VALID [2022-04-28 05:50:53,857 INFO L290 TraceCheckUtils]: 121: Hoare triple {16243#false} assume !false; {16243#false} is VALID [2022-04-28 05:50:53,857 INFO L134 CoverageAnalysis]: Checked inductivity of 432 backedges. 73 proven. 7 refuted. 0 times theorem prover too weak. 352 trivial. 0 not checked. [2022-04-28 05:50:53,857 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:03,131 INFO L290 TraceCheckUtils]: 121: Hoare triple {16243#false} assume !false; {16243#false} is VALID [2022-04-28 05:51:03,132 INFO L290 TraceCheckUtils]: 120: Hoare triple {16609#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16243#false} is VALID [2022-04-28 05:51:03,132 INFO L290 TraceCheckUtils]: 119: Hoare triple {16605#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {16609#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:03,133 INFO L272 TraceCheckUtils]: 118: Hoare triple {16577#(= 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)); {16605#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:03,133 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {16242#true} {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #91#return; {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:03,133 INFO L290 TraceCheckUtils]: 116: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,133 INFO L290 TraceCheckUtils]: 115: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,134 INFO L290 TraceCheckUtils]: 114: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,134 INFO L272 TraceCheckUtils]: 113: Hoare triple {16577#(= main_~a~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)); {16242#true} is VALID [2022-04-28 05:51:03,134 INFO L290 TraceCheckUtils]: 112: Hoare triple {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:03,134 INFO L290 TraceCheckUtils]: 111: Hoare triple {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:03,135 INFO L290 TraceCheckUtils]: 110: Hoare triple {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:03,135 INFO L290 TraceCheckUtils]: 109: Hoare triple {16555#(= 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; {16577#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:03,135 INFO L290 TraceCheckUtils]: 108: Hoare triple {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:03,136 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {16242#true} {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #97#return; {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:03,136 INFO L290 TraceCheckUtils]: 106: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,136 INFO L290 TraceCheckUtils]: 105: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,136 INFO L290 TraceCheckUtils]: 104: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,136 INFO L272 TraceCheckUtils]: 103: Hoare triple {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,137 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {16548#(not (= |__VERIFIER_assert_#in~cond| 0))} {16242#true} #95#return; {16555#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:51:03,137 INFO L290 TraceCheckUtils]: 101: Hoare triple {16548#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {16548#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:03,137 INFO L290 TraceCheckUtils]: 100: Hoare triple {16682#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {16548#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:03,138 INFO L290 TraceCheckUtils]: 99: Hoare triple {16242#true} ~cond := #in~cond; {16682#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:51:03,138 INFO L272 TraceCheckUtils]: 98: Hoare triple {16242#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,138 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {16242#true} {16242#true} #93#return; {16242#true} is VALID [2022-04-28 05:51:03,138 INFO L290 TraceCheckUtils]: 96: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,138 INFO L290 TraceCheckUtils]: 95: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,138 INFO L290 TraceCheckUtils]: 94: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,138 INFO L272 TraceCheckUtils]: 93: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,138 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {16242#true} {16242#true} #91#return; {16242#true} is VALID [2022-04-28 05:51:03,138 INFO L290 TraceCheckUtils]: 91: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,138 INFO L290 TraceCheckUtils]: 90: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,138 INFO L290 TraceCheckUtils]: 89: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,138 INFO L272 TraceCheckUtils]: 88: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L290 TraceCheckUtils]: 87: Hoare triple {16242#true} assume !false; {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L290 TraceCheckUtils]: 86: Hoare triple {16242#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {16242#true} {16242#true} #97#return; {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L290 TraceCheckUtils]: 84: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L290 TraceCheckUtils]: 83: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L290 TraceCheckUtils]: 82: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L272 TraceCheckUtils]: 81: Hoare triple {16242#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {16242#true} {16242#true} #95#return; {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L290 TraceCheckUtils]: 79: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L290 TraceCheckUtils]: 78: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L290 TraceCheckUtils]: 77: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L272 TraceCheckUtils]: 76: Hoare triple {16242#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {16242#true} {16242#true} #93#return; {16242#true} is VALID [2022-04-28 05:51:03,139 INFO L290 TraceCheckUtils]: 74: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L290 TraceCheckUtils]: 73: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L290 TraceCheckUtils]: 72: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L272 TraceCheckUtils]: 71: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {16242#true} {16242#true} #91#return; {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L290 TraceCheckUtils]: 69: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L290 TraceCheckUtils]: 68: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L290 TraceCheckUtils]: 67: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L272 TraceCheckUtils]: 66: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L290 TraceCheckUtils]: 65: Hoare triple {16242#true} assume !false; {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L290 TraceCheckUtils]: 64: Hoare triple {16242#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L290 TraceCheckUtils]: 63: Hoare triple {16242#true} assume !false; {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L290 TraceCheckUtils]: 62: Hoare triple {16242#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; {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L290 TraceCheckUtils]: 61: Hoare triple {16242#true} assume !(~c~0 >= ~b~0); {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {16242#true} {16242#true} #97#return; {16242#true} is VALID [2022-04-28 05:51:03,140 INFO L290 TraceCheckUtils]: 59: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L290 TraceCheckUtils]: 58: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L290 TraceCheckUtils]: 57: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L272 TraceCheckUtils]: 56: Hoare triple {16242#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {16242#true} {16242#true} #95#return; {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L290 TraceCheckUtils]: 54: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L290 TraceCheckUtils]: 53: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L290 TraceCheckUtils]: 52: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L272 TraceCheckUtils]: 51: Hoare triple {16242#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {16242#true} {16242#true} #93#return; {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L290 TraceCheckUtils]: 49: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L290 TraceCheckUtils]: 48: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L290 TraceCheckUtils]: 47: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L272 TraceCheckUtils]: 46: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,141 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {16242#true} {16242#true} #91#return; {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L290 TraceCheckUtils]: 44: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L290 TraceCheckUtils]: 43: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L290 TraceCheckUtils]: 42: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L272 TraceCheckUtils]: 41: Hoare triple {16242#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L290 TraceCheckUtils]: 40: Hoare triple {16242#true} assume !false; {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L290 TraceCheckUtils]: 39: Hoare triple {16242#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L290 TraceCheckUtils]: 38: Hoare triple {16242#true} assume !false; {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {16242#true} {16242#true} #89#return; {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L290 TraceCheckUtils]: 36: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L290 TraceCheckUtils]: 35: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L290 TraceCheckUtils]: 34: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L272 TraceCheckUtils]: 33: Hoare triple {16242#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {16242#true} {16242#true} #87#return; {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L290 TraceCheckUtils]: 31: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,142 INFO L290 TraceCheckUtils]: 30: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L290 TraceCheckUtils]: 29: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L272 TraceCheckUtils]: 28: Hoare triple {16242#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L290 TraceCheckUtils]: 27: Hoare triple {16242#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {16242#true} {16242#true} #85#return; {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L290 TraceCheckUtils]: 25: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L290 TraceCheckUtils]: 24: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L290 TraceCheckUtils]: 23: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L272 TraceCheckUtils]: 22: Hoare triple {16242#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {16242#true} {16242#true} #83#return; {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L290 TraceCheckUtils]: 20: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L290 TraceCheckUtils]: 19: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L290 TraceCheckUtils]: 18: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L272 TraceCheckUtils]: 17: Hoare triple {16242#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {16242#true} {16242#true} #81#return; {16242#true} is VALID [2022-04-28 05:51:03,143 INFO L290 TraceCheckUtils]: 15: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L290 TraceCheckUtils]: 14: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L290 TraceCheckUtils]: 13: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L272 TraceCheckUtils]: 12: Hoare triple {16242#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L290 TraceCheckUtils]: 11: Hoare triple {16242#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16242#true} {16242#true} #79#return; {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L290 TraceCheckUtils]: 9: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L290 TraceCheckUtils]: 8: Hoare triple {16242#true} assume !(0 == ~cond); {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L290 TraceCheckUtils]: 7: Hoare triple {16242#true} ~cond := #in~cond; {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L272 TraceCheckUtils]: 6: Hoare triple {16242#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L290 TraceCheckUtils]: 5: Hoare triple {16242#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L272 TraceCheckUtils]: 4: Hoare triple {16242#true} call #t~ret6 := main(); {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16242#true} {16242#true} #103#return; {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L290 TraceCheckUtils]: 2: Hoare triple {16242#true} assume true; {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L290 TraceCheckUtils]: 1: Hoare triple {16242#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); {16242#true} is VALID [2022-04-28 05:51:03,144 INFO L272 TraceCheckUtils]: 0: Hoare triple {16242#true} call ULTIMATE.init(); {16242#true} is VALID [2022-04-28 05:51:03,145 INFO L134 CoverageAnalysis]: Checked inductivity of 432 backedges. 73 proven. 7 refuted. 0 times theorem prover too weak. 352 trivial. 0 not checked. [2022-04-28 05:51:03,145 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:03,145 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [957825194] [2022-04-28 05:51:03,145 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:03,145 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1388085816] [2022-04-28 05:51:03,145 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1388085816] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:03,145 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:03,145 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:51:03,145 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:03,146 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1084151579] [2022-04-28 05:51:03,146 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1084151579] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:03,146 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:03,146 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:03,146 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1010994898] [2022-04-28 05:51:03,146 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:03,146 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) Word has length 122 [2022-04-28 05:51:03,146 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:03,146 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-28 05:51:03,189 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-28 05:51:03,189 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:03,189 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:03,190 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:03,190 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:51:03,190 INFO L87 Difference]: Start difference. First operand 184 states and 256 transitions. Second operand has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-28 05:51:04,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:04,047 INFO L93 Difference]: Finished difference Result 198 states and 267 transitions. [2022-04-28 05:51:04,047 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:51:04,047 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) Word has length 122 [2022-04-28 05:51:04,048 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:04,048 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-28 05:51:04,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 60 transitions. [2022-04-28 05:51:04,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-28 05:51:04,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 60 transitions. [2022-04-28 05:51:04,049 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 60 transitions. [2022-04-28 05:51:04,097 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-28 05:51:04,100 INFO L225 Difference]: With dead ends: 198 [2022-04-28 05:51:04,100 INFO L226 Difference]: Without dead ends: 195 [2022-04-28 05:51:04,100 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 246 GetRequests, 235 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:51:04,101 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 17 mSDsluCounter, 120 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 129 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:04,101 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [20 Valid, 156 Invalid, 129 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 112 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:51:04,101 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 195 states. [2022-04-28 05:51:04,464 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 195 to 194. [2022-04-28 05:51:04,464 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:04,465 INFO L82 GeneralOperation]: Start isEquivalent. First operand 195 states. Second operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) [2022-04-28 05:51:04,465 INFO L74 IsIncluded]: Start isIncluded. First operand 195 states. Second operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) [2022-04-28 05:51:04,465 INFO L87 Difference]: Start difference. First operand 195 states. Second operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) [2022-04-28 05:51:04,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:04,469 INFO L93 Difference]: Finished difference Result 195 states and 263 transitions. [2022-04-28 05:51:04,469 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 263 transitions. [2022-04-28 05:51:04,470 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:04,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:04,470 INFO L74 IsIncluded]: Start isIncluded. First operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) Second operand 195 states. [2022-04-28 05:51:04,470 INFO L87 Difference]: Start difference. First operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) Second operand 195 states. [2022-04-28 05:51:04,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:04,474 INFO L93 Difference]: Finished difference Result 195 states and 263 transitions. [2022-04-28 05:51:04,474 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 263 transitions. [2022-04-28 05:51:04,474 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:04,475 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:04,475 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:04,475 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:04,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 194 states, 103 states have (on average 1.145631067961165) internal successors, (118), 104 states have internal predecessors, (118), 73 states have call successors, (73), 18 states have call predecessors, (73), 17 states have return successors, (71), 71 states have call predecessors, (71), 71 states have call successors, (71) [2022-04-28 05:51:04,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 194 states to 194 states and 262 transitions. [2022-04-28 05:51:04,479 INFO L78 Accepts]: Start accepts. Automaton has 194 states and 262 transitions. Word has length 122 [2022-04-28 05:51:04,479 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:04,479 INFO L495 AbstractCegarLoop]: Abstraction has 194 states and 262 transitions. [2022-04-28 05:51:04,479 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.5) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (15), 2 states have call predecessors, (15), 2 states have return successors, (14), 3 states have call predecessors, (14), 3 states have call successors, (14) [2022-04-28 05:51:04,479 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 194 states and 262 transitions. [2022-04-28 05:51:05,033 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 262 edges. 262 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:05,033 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 262 transitions. [2022-04-28 05:51:05,034 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 128 [2022-04-28 05:51:05,034 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:05,034 INFO L195 NwaCegarLoop]: trace histogram [15, 14, 14, 6, 6, 6, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:05,051 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-28 05:51:05,234 WARN L477 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-28 05:51:05,235 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:05,235 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:05,235 INFO L85 PathProgramCache]: Analyzing trace with hash 541794983, now seen corresponding path program 5 times [2022-04-28 05:51:05,235 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:05,235 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1625374185] [2022-04-28 05:51:05,236 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:05,236 INFO L85 PathProgramCache]: Analyzing trace with hash 541794983, now seen corresponding path program 6 times [2022-04-28 05:51:05,236 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:05,236 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [151284409] [2022-04-28 05:51:05,236 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:05,236 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:05,247 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:05,247 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [544104162] [2022-04-28 05:51:05,247 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:51:05,247 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:05,248 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:05,249 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-28 05:51:05,250 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-28 05:51:05,317 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 05:51:05,318 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:05,319 INFO L263 TraceCheckSpWp]: Trace formula consists of 277 conjuncts, 77 conjunts are in the unsatisfiable core [2022-04-28 05:51:05,337 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:05,338 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:06,736 INFO L272 TraceCheckUtils]: 0: Hoare triple {18162#true} call ULTIMATE.init(); {18162#true} is VALID [2022-04-28 05:51:06,736 INFO L290 TraceCheckUtils]: 1: Hoare triple {18162#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); {18162#true} is VALID [2022-04-28 05:51:06,736 INFO L290 TraceCheckUtils]: 2: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,736 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18162#true} {18162#true} #103#return; {18162#true} is VALID [2022-04-28 05:51:06,736 INFO L272 TraceCheckUtils]: 4: Hoare triple {18162#true} call #t~ret6 := main(); {18162#true} is VALID [2022-04-28 05:51:06,736 INFO L290 TraceCheckUtils]: 5: Hoare triple {18162#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {18162#true} is VALID [2022-04-28 05:51:06,736 INFO L272 TraceCheckUtils]: 6: Hoare triple {18162#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L290 TraceCheckUtils]: 7: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L290 TraceCheckUtils]: 8: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L290 TraceCheckUtils]: 9: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18162#true} {18162#true} #79#return; {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L290 TraceCheckUtils]: 11: Hoare triple {18162#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L272 TraceCheckUtils]: 12: Hoare triple {18162#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L290 TraceCheckUtils]: 13: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L290 TraceCheckUtils]: 14: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L290 TraceCheckUtils]: 15: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {18162#true} {18162#true} #81#return; {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L272 TraceCheckUtils]: 17: Hoare triple {18162#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L290 TraceCheckUtils]: 18: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L290 TraceCheckUtils]: 19: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L290 TraceCheckUtils]: 20: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,737 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18162#true} {18162#true} #83#return; {18162#true} is VALID [2022-04-28 05:51:06,738 INFO L272 TraceCheckUtils]: 22: Hoare triple {18162#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,738 INFO L290 TraceCheckUtils]: 23: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,738 INFO L290 TraceCheckUtils]: 24: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,738 INFO L290 TraceCheckUtils]: 25: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,738 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {18162#true} {18162#true} #85#return; {18162#true} is VALID [2022-04-28 05:51:06,738 INFO L290 TraceCheckUtils]: 27: Hoare triple {18162#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {18248#(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-28 05:51:06,738 INFO L272 TraceCheckUtils]: 28: Hoare triple {18248#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,738 INFO L290 TraceCheckUtils]: 29: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,738 INFO L290 TraceCheckUtils]: 30: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,739 INFO L290 TraceCheckUtils]: 31: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,739 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {18162#true} {18248#(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))} #87#return; {18248#(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-28 05:51:06,739 INFO L272 TraceCheckUtils]: 33: Hoare triple {18248#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,739 INFO L290 TraceCheckUtils]: 34: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,739 INFO L290 TraceCheckUtils]: 35: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,739 INFO L290 TraceCheckUtils]: 36: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,740 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {18162#true} {18248#(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))} #89#return; {18248#(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-28 05:51:06,740 INFO L290 TraceCheckUtils]: 38: Hoare triple {18248#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {18248#(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-28 05:51:06,741 INFO L290 TraceCheckUtils]: 39: Hoare triple {18248#(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);~c~0 := ~a~0;~k~0 := 0; {18285#(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-28 05:51:06,741 INFO L290 TraceCheckUtils]: 40: Hoare triple {18285#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {18285#(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-28 05:51:06,741 INFO L272 TraceCheckUtils]: 41: Hoare triple {18285#(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))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,741 INFO L290 TraceCheckUtils]: 42: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,742 INFO L290 TraceCheckUtils]: 43: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,742 INFO L290 TraceCheckUtils]: 44: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,742 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {18162#true} {18285#(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))} #91#return; {18285#(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-28 05:51:06,742 INFO L272 TraceCheckUtils]: 46: Hoare triple {18285#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,743 INFO L290 TraceCheckUtils]: 47: Hoare triple {18162#true} ~cond := #in~cond; {18310#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:06,743 INFO L290 TraceCheckUtils]: 48: Hoare triple {18310#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:06,743 INFO L290 TraceCheckUtils]: 49: Hoare triple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:06,744 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} {18285#(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))} #93#return; {18321#(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-28 05:51:06,744 INFO L272 TraceCheckUtils]: 51: Hoare triple {18321#(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)); {18162#true} is VALID [2022-04-28 05:51:06,744 INFO L290 TraceCheckUtils]: 52: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,744 INFO L290 TraceCheckUtils]: 53: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,744 INFO L290 TraceCheckUtils]: 54: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,745 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18162#true} {18321#(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))} #95#return; {18321#(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-28 05:51:06,745 INFO L272 TraceCheckUtils]: 56: Hoare triple {18321#(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 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,745 INFO L290 TraceCheckUtils]: 57: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,745 INFO L290 TraceCheckUtils]: 58: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,745 INFO L290 TraceCheckUtils]: 59: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,746 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {18162#true} {18321#(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))} #97#return; {18321#(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-28 05:51:06,746 INFO L290 TraceCheckUtils]: 61: Hoare triple {18321#(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); {18355#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:06,747 INFO L290 TraceCheckUtils]: 62: Hoare triple {18355#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~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; {18359#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~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-28 05:51:06,747 INFO L290 TraceCheckUtils]: 63: Hoare triple {18359#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~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 !false; {18359#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~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-28 05:51:06,748 INFO L290 TraceCheckUtils]: 64: Hoare triple {18359#(and (= main_~s~0 0) (not (<= main_~y~0 main_~x~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);~c~0 := ~a~0;~k~0 := 0; {18366#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 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_~q~0 1))} is VALID [2022-04-28 05:51:06,748 INFO L290 TraceCheckUtils]: 65: Hoare triple {18366#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 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_~q~0 1))} assume !false; {18366#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 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_~q~0 1))} is VALID [2022-04-28 05:51:06,748 INFO L272 TraceCheckUtils]: 66: Hoare triple {18366#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 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_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,748 INFO L290 TraceCheckUtils]: 67: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,748 INFO L290 TraceCheckUtils]: 68: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,749 INFO L290 TraceCheckUtils]: 69: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,749 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {18162#true} {18366#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 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_~q~0 1))} #91#return; {18366#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 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_~q~0 1))} is VALID [2022-04-28 05:51:06,749 INFO L272 TraceCheckUtils]: 71: Hoare triple {18366#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 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_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,750 INFO L290 TraceCheckUtils]: 72: Hoare triple {18162#true} ~cond := #in~cond; {18310#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:06,750 INFO L290 TraceCheckUtils]: 73: Hoare triple {18310#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:06,750 INFO L290 TraceCheckUtils]: 74: Hoare triple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:06,751 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} {18366#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (not (<= main_~y~0 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_~q~0 1))} #93#return; {18400#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:06,751 INFO L272 TraceCheckUtils]: 76: Hoare triple {18400#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,751 INFO L290 TraceCheckUtils]: 77: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,751 INFO L290 TraceCheckUtils]: 78: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,751 INFO L290 TraceCheckUtils]: 79: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,752 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {18162#true} {18400#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {18400#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:06,752 INFO L272 TraceCheckUtils]: 81: Hoare triple {18400#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,752 INFO L290 TraceCheckUtils]: 82: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,752 INFO L290 TraceCheckUtils]: 83: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,752 INFO L290 TraceCheckUtils]: 84: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,753 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {18162#true} {18400#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {18400#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:06,754 INFO L290 TraceCheckUtils]: 86: Hoare triple {18400#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:06,754 INFO L290 TraceCheckUtils]: 87: Hoare triple {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !false; {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:06,755 INFO L272 TraceCheckUtils]: 88: Hoare triple {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,755 INFO L290 TraceCheckUtils]: 89: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,755 INFO L290 TraceCheckUtils]: 90: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,755 INFO L290 TraceCheckUtils]: 91: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,755 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18162#true} {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #91#return; {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:06,756 INFO L272 TraceCheckUtils]: 93: Hoare triple {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~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)); {18162#true} is VALID [2022-04-28 05:51:06,756 INFO L290 TraceCheckUtils]: 94: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,756 INFO L290 TraceCheckUtils]: 95: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,756 INFO L290 TraceCheckUtils]: 96: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,756 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {18162#true} {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #93#return; {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:06,757 INFO L272 TraceCheckUtils]: 98: Hoare triple {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~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)); {18162#true} is VALID [2022-04-28 05:51:06,757 INFO L290 TraceCheckUtils]: 99: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,757 INFO L290 TraceCheckUtils]: 100: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,757 INFO L290 TraceCheckUtils]: 101: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,757 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {18162#true} {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #95#return; {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:06,757 INFO L272 TraceCheckUtils]: 103: Hoare triple {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,758 INFO L290 TraceCheckUtils]: 104: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,758 INFO L290 TraceCheckUtils]: 105: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,758 INFO L290 TraceCheckUtils]: 106: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,758 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {18162#true} {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #97#return; {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:06,759 INFO L290 TraceCheckUtils]: 108: Hoare triple {18434#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {18501#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:51:06,760 INFO L290 TraceCheckUtils]: 109: Hoare triple {18501#(and (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 main_~y~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~x~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18505#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:51:06,761 INFO L290 TraceCheckUtils]: 110: Hoare triple {18505#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~a~0 main_~x~0))} assume !false; {18505#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:51:06,761 INFO L290 TraceCheckUtils]: 111: Hoare triple {18505#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18512#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~k~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (<= main_~c~0 main_~a~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:51:06,762 INFO L290 TraceCheckUtils]: 112: Hoare triple {18512#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~k~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (<= main_~c~0 main_~a~0) (= main_~a~0 main_~x~0))} assume !false; {18512#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~k~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (<= main_~c~0 main_~a~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 05:51:06,762 INFO L272 TraceCheckUtils]: 113: Hoare triple {18512#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~k~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (<= main_~c~0 main_~a~0) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,762 INFO L290 TraceCheckUtils]: 114: Hoare triple {18162#true} ~cond := #in~cond; {18310#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:06,762 INFO L290 TraceCheckUtils]: 115: Hoare triple {18310#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:06,763 INFO L290 TraceCheckUtils]: 116: Hoare triple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:06,764 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} {18512#(and (not (<= (* main_~a~0 2) main_~y~0)) (= main_~k~0 0) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (<= main_~c~0 main_~a~0) (= main_~a~0 main_~x~0))} #91#return; {18531#(and (not (<= main_~y~0 (* main_~b~0 2))) (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (< main_~x~0 main_~y~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0))} is VALID [2022-04-28 05:51:06,764 INFO L272 TraceCheckUtils]: 118: Hoare triple {18531#(and (not (<= main_~y~0 (* main_~b~0 2))) (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (< main_~x~0 main_~y~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:51:06,764 INFO L290 TraceCheckUtils]: 119: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:51:06,764 INFO L290 TraceCheckUtils]: 120: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:51:06,764 INFO L290 TraceCheckUtils]: 121: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:51:06,765 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {18162#true} {18531#(and (not (<= main_~y~0 (* main_~b~0 2))) (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (< main_~x~0 main_~y~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0))} #93#return; {18531#(and (not (<= main_~y~0 (* main_~b~0 2))) (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (< main_~x~0 main_~y~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0))} is VALID [2022-04-28 05:51:06,766 INFO L272 TraceCheckUtils]: 123: Hoare triple {18531#(and (not (<= main_~y~0 (* main_~b~0 2))) (= main_~s~0 1) (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~x~0) (< main_~x~0 main_~y~0) (= (+ (- 1) (* (- 1) main_~q~0)) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18550#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:06,766 INFO L290 TraceCheckUtils]: 124: Hoare triple {18550#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18554#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:06,766 INFO L290 TraceCheckUtils]: 125: Hoare triple {18554#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18163#false} is VALID [2022-04-28 05:51:06,766 INFO L290 TraceCheckUtils]: 126: Hoare triple {18163#false} assume !false; {18163#false} is VALID [2022-04-28 05:51:06,767 INFO L134 CoverageAnalysis]: Checked inductivity of 489 backedges. 70 proven. 94 refuted. 0 times theorem prover too weak. 325 trivial. 0 not checked. [2022-04-28 05:51:06,767 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:04,288 INFO L290 TraceCheckUtils]: 126: Hoare triple {18163#false} assume !false; {18163#false} is VALID [2022-04-28 05:52:04,289 INFO L290 TraceCheckUtils]: 125: Hoare triple {18554#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18163#false} is VALID [2022-04-28 05:52:04,289 INFO L290 TraceCheckUtils]: 124: Hoare triple {18550#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18554#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:04,290 INFO L272 TraceCheckUtils]: 123: Hoare triple {18570#(= 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)); {18550#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:04,291 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {18162#true} {18570#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #93#return; {18570#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:04,291 INFO L290 TraceCheckUtils]: 121: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:04,291 INFO L290 TraceCheckUtils]: 120: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:04,291 INFO L290 TraceCheckUtils]: 119: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:04,291 INFO L272 TraceCheckUtils]: 118: Hoare triple {18570#(= 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)); {18162#true} is VALID [2022-04-28 05:52:04,292 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} {18589#(or (= 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)))))} #91#return; {18570#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:04,292 INFO L290 TraceCheckUtils]: 116: Hoare triple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:04,292 INFO L290 TraceCheckUtils]: 115: Hoare triple {18599#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:04,293 INFO L290 TraceCheckUtils]: 114: Hoare triple {18162#true} ~cond := #in~cond; {18599#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:52:04,293 INFO L272 TraceCheckUtils]: 113: Hoare triple {18589#(or (= 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)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:04,293 INFO L290 TraceCheckUtils]: 112: Hoare triple {18589#(or (= 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)))))} assume !false; {18589#(or (= 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)))))} is VALID [2022-04-28 05:52:04,294 INFO L290 TraceCheckUtils]: 111: Hoare triple {18570#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18589#(or (= 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)))))} is VALID [2022-04-28 05:52:04,294 INFO L290 TraceCheckUtils]: 110: Hoare triple {18570#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {18570#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:06,296 WARN L290 TraceCheckUtils]: 109: Hoare triple {18615#(= (+ (* 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; {18570#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-28 05:52:06,296 INFO L290 TraceCheckUtils]: 108: Hoare triple {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} assume !(~c~0 >= ~b~0); {18615#(= (+ (* 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-28 05:52:06,297 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {18162#true} {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} #97#return; {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:52:06,297 INFO L290 TraceCheckUtils]: 106: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,297 INFO L290 TraceCheckUtils]: 105: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,297 INFO L290 TraceCheckUtils]: 104: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,298 INFO L272 TraceCheckUtils]: 103: Hoare triple {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,298 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {18162#true} {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} #95#return; {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:52:06,298 INFO L290 TraceCheckUtils]: 101: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,298 INFO L290 TraceCheckUtils]: 100: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,298 INFO L290 TraceCheckUtils]: 99: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,298 INFO L272 TraceCheckUtils]: 98: Hoare triple {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,299 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {18162#true} {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} #93#return; {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:52:06,299 INFO L290 TraceCheckUtils]: 96: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,299 INFO L290 TraceCheckUtils]: 95: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,299 INFO L290 TraceCheckUtils]: 94: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,299 INFO L272 TraceCheckUtils]: 93: Hoare triple {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,300 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18162#true} {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} #91#return; {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:52:06,300 INFO L290 TraceCheckUtils]: 91: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,300 INFO L290 TraceCheckUtils]: 90: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,300 INFO L290 TraceCheckUtils]: 89: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,300 INFO L272 TraceCheckUtils]: 88: Hoare triple {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,301 INFO L290 TraceCheckUtils]: 87: Hoare triple {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} assume !false; {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:52:06,720 INFO L290 TraceCheckUtils]: 86: Hoare triple {18686#(or (<= (* main_~b~0 2) main_~c~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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {18619#(or (= (+ (* 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))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:52:06,721 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {18162#true} {18686#(or (<= (* main_~b~0 2) main_~c~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))))} #97#return; {18686#(or (<= (* main_~b~0 2) main_~c~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-28 05:52:06,721 INFO L290 TraceCheckUtils]: 84: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,722 INFO L290 TraceCheckUtils]: 83: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,722 INFO L290 TraceCheckUtils]: 82: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,722 INFO L272 TraceCheckUtils]: 81: Hoare triple {18686#(or (<= (* main_~b~0 2) main_~c~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))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,722 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {18162#true} {18686#(or (<= (* main_~b~0 2) main_~c~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))))} #95#return; {18686#(or (<= (* main_~b~0 2) main_~c~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-28 05:52:06,722 INFO L290 TraceCheckUtils]: 79: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,722 INFO L290 TraceCheckUtils]: 78: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,723 INFO L290 TraceCheckUtils]: 77: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,723 INFO L272 TraceCheckUtils]: 76: Hoare triple {18686#(or (<= (* main_~b~0 2) main_~c~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))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,724 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} {18720#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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))))} #93#return; {18686#(or (<= (* main_~b~0 2) main_~c~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-28 05:52:06,724 INFO L290 TraceCheckUtils]: 74: Hoare triple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:06,724 INFO L290 TraceCheckUtils]: 73: Hoare triple {18599#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:06,724 INFO L290 TraceCheckUtils]: 72: Hoare triple {18162#true} ~cond := #in~cond; {18599#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:52:06,725 INFO L272 TraceCheckUtils]: 71: Hoare triple {18720#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,725 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {18162#true} {18720#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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))))} #91#return; {18720#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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-28 05:52:06,725 INFO L290 TraceCheckUtils]: 69: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,725 INFO L290 TraceCheckUtils]: 68: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,725 INFO L290 TraceCheckUtils]: 67: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,725 INFO L272 TraceCheckUtils]: 66: Hoare triple {18720#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,726 INFO L290 TraceCheckUtils]: 65: Hoare triple {18720#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {18720#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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-28 05:52:06,726 INFO L290 TraceCheckUtils]: 64: Hoare triple {18754#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18720#(or (<= (* main_~b~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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-28 05:52:06,727 INFO L290 TraceCheckUtils]: 63: Hoare triple {18754#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} assume !false; {18754#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 05:52:06,797 INFO L290 TraceCheckUtils]: 62: Hoare triple {18761#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~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; {18754#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~a~0 (* (- 1) main_~b~0) (* main_~q~0 main_~x~0 1) (* main_~y~0 main_~s~0 1)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-28 05:52:06,798 INFO L290 TraceCheckUtils]: 61: Hoare triple {18765#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {18761#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:06,799 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {18162#true} {18765#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #97#return; {18765#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:06,799 INFO L290 TraceCheckUtils]: 59: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,799 INFO L290 TraceCheckUtils]: 58: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,799 INFO L290 TraceCheckUtils]: 57: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,799 INFO L272 TraceCheckUtils]: 56: Hoare triple {18765#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,800 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {18162#true} {18765#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #95#return; {18765#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:06,800 INFO L290 TraceCheckUtils]: 54: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,800 INFO L290 TraceCheckUtils]: 53: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,800 INFO L290 TraceCheckUtils]: 52: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,800 INFO L272 TraceCheckUtils]: 51: Hoare triple {18765#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~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)); {18162#true} is VALID [2022-04-28 05:52:06,801 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} {18799#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #93#return; {18765#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:06,801 INFO L290 TraceCheckUtils]: 49: Hoare triple {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:06,802 INFO L290 TraceCheckUtils]: 48: Hoare triple {18599#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18314#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:06,802 INFO L290 TraceCheckUtils]: 47: Hoare triple {18162#true} ~cond := #in~cond; {18599#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:52:06,802 INFO L272 TraceCheckUtils]: 46: Hoare triple {18799#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~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)); {18162#true} is VALID [2022-04-28 05:52:06,803 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {18162#true} {18799#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #91#return; {18799#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:06,803 INFO L290 TraceCheckUtils]: 44: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,803 INFO L290 TraceCheckUtils]: 43: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,803 INFO L290 TraceCheckUtils]: 42: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,803 INFO L272 TraceCheckUtils]: 41: Hoare triple {18799#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~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)); {18162#true} is VALID [2022-04-28 05:52:06,803 INFO L290 TraceCheckUtils]: 40: Hoare triple {18799#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {18799#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:06,804 INFO L290 TraceCheckUtils]: 39: Hoare triple {18162#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18799#(or (<= (* main_~c~0 2) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (= (+ (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0 1) (* main_~q~0 main_~x~0) (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 1) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:52:06,804 INFO L290 TraceCheckUtils]: 38: Hoare triple {18162#true} assume !false; {18162#true} is VALID [2022-04-28 05:52:06,804 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {18162#true} {18162#true} #89#return; {18162#true} is VALID [2022-04-28 05:52:06,804 INFO L290 TraceCheckUtils]: 36: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,804 INFO L290 TraceCheckUtils]: 35: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,804 INFO L290 TraceCheckUtils]: 34: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,804 INFO L272 TraceCheckUtils]: 33: Hoare triple {18162#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {18162#true} {18162#true} #87#return; {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L290 TraceCheckUtils]: 31: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L290 TraceCheckUtils]: 30: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L290 TraceCheckUtils]: 29: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L272 TraceCheckUtils]: 28: Hoare triple {18162#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L290 TraceCheckUtils]: 27: Hoare triple {18162#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {18162#true} {18162#true} #85#return; {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L290 TraceCheckUtils]: 25: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L290 TraceCheckUtils]: 24: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L290 TraceCheckUtils]: 23: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L272 TraceCheckUtils]: 22: Hoare triple {18162#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18162#true} {18162#true} #83#return; {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L290 TraceCheckUtils]: 20: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L290 TraceCheckUtils]: 19: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,805 INFO L290 TraceCheckUtils]: 18: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L272 TraceCheckUtils]: 17: Hoare triple {18162#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {18162#true} {18162#true} #81#return; {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L290 TraceCheckUtils]: 15: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L290 TraceCheckUtils]: 14: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L290 TraceCheckUtils]: 13: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L272 TraceCheckUtils]: 12: Hoare triple {18162#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L290 TraceCheckUtils]: 11: Hoare triple {18162#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18162#true} {18162#true} #79#return; {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L290 TraceCheckUtils]: 9: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L290 TraceCheckUtils]: 8: Hoare triple {18162#true} assume !(0 == ~cond); {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L290 TraceCheckUtils]: 7: Hoare triple {18162#true} ~cond := #in~cond; {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L272 TraceCheckUtils]: 6: Hoare triple {18162#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L290 TraceCheckUtils]: 5: Hoare triple {18162#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L272 TraceCheckUtils]: 4: Hoare triple {18162#true} call #t~ret6 := main(); {18162#true} is VALID [2022-04-28 05:52:06,806 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18162#true} {18162#true} #103#return; {18162#true} is VALID [2022-04-28 05:52:06,807 INFO L290 TraceCheckUtils]: 2: Hoare triple {18162#true} assume true; {18162#true} is VALID [2022-04-28 05:52:06,807 INFO L290 TraceCheckUtils]: 1: Hoare triple {18162#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); {18162#true} is VALID [2022-04-28 05:52:06,807 INFO L272 TraceCheckUtils]: 0: Hoare triple {18162#true} call ULTIMATE.init(); {18162#true} is VALID [2022-04-28 05:52:06,807 INFO L134 CoverageAnalysis]: Checked inductivity of 489 backedges. 89 proven. 75 refuted. 0 times theorem prover too weak. 325 trivial. 0 not checked. [2022-04-28 05:52:06,807 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:06,807 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [151284409] [2022-04-28 05:52:06,807 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:06,808 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [544104162] [2022-04-28 05:52:06,808 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [544104162] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:06,808 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:06,808 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 16] total 29 [2022-04-28 05:52:06,808 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:06,808 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1625374185] [2022-04-28 05:52:06,808 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1625374185] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:06,808 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:06,808 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-28 05:52:06,808 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [943531846] [2022-04-28 05:52:06,808 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:06,809 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) Word has length 127 [2022-04-28 05:52:06,809 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:06,809 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) [2022-04-28 05:52:06,889 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-28 05:52:06,889 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-28 05:52:06,889 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:06,889 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-28 05:52:06,890 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=168, Invalid=644, Unknown=0, NotChecked=0, Total=812 [2022-04-28 05:52:06,890 INFO L87 Difference]: Start difference. First operand 194 states and 262 transitions. Second operand has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) [2022-04-28 05:52:12,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:12,339 INFO L93 Difference]: Finished difference Result 265 states and 355 transitions. [2022-04-28 05:52:12,339 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 05:52:12,339 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) Word has length 127 [2022-04-28 05:52:12,339 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:12,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) [2022-04-28 05:52:12,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 135 transitions. [2022-04-28 05:52:12,342 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) [2022-04-28 05:52:12,343 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 135 transitions. [2022-04-28 05:52:12,343 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 135 transitions. [2022-04-28 05:52:12,508 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-28 05:52:12,513 INFO L225 Difference]: With dead ends: 265 [2022-04-28 05:52:12,513 INFO L226 Difference]: Without dead ends: 263 [2022-04-28 05:52:12,513 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 258 GetRequests, 225 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 240 ImplicationChecksByTransitivity, 2.5s TimeCoverageRelationStatistics Valid=227, Invalid=895, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 05:52:12,514 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 36 mSDsluCounter, 276 mSDsCounter, 0 mSdLazyCounter, 790 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 326 SdHoareTripleChecker+Invalid, 843 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 790 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:12,514 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [58 Valid, 326 Invalid, 843 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 790 Invalid, 0 Unknown, 0 Unchecked, 2.2s Time] [2022-04-28 05:52:12,514 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 263 states. [2022-04-28 05:52:13,061 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 263 to 260. [2022-04-28 05:52:13,061 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:13,061 INFO L82 GeneralOperation]: Start isEquivalent. First operand 263 states. Second operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-28 05:52:13,062 INFO L74 IsIncluded]: Start isIncluded. First operand 263 states. Second operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-28 05:52:13,062 INFO L87 Difference]: Start difference. First operand 263 states. Second operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-28 05:52:13,067 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:13,067 INFO L93 Difference]: Finished difference Result 263 states and 353 transitions. [2022-04-28 05:52:13,067 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 353 transitions. [2022-04-28 05:52:13,068 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:13,068 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:13,068 INFO L74 IsIncluded]: Start isIncluded. First operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) Second operand 263 states. [2022-04-28 05:52:13,069 INFO L87 Difference]: Start difference. First operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) Second operand 263 states. [2022-04-28 05:52:13,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:13,073 INFO L93 Difference]: Finished difference Result 263 states and 353 transitions. [2022-04-28 05:52:13,073 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 353 transitions. [2022-04-28 05:52:13,074 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:13,074 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:13,074 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:13,074 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:13,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 260 states, 139 states have (on average 1.1366906474820144) internal successors, (158), 140 states have internal predecessors, (158), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-28 05:52:13,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 260 states to 260 states and 350 transitions. [2022-04-28 05:52:13,079 INFO L78 Accepts]: Start accepts. Automaton has 260 states and 350 transitions. Word has length 127 [2022-04-28 05:52:13,080 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:13,080 INFO L495 AbstractCegarLoop]: Abstraction has 260 states and 350 transitions. [2022-04-28 05:52:13,082 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 17 states have (on average 1.8823529411764706) internal successors, (32), 14 states have internal predecessors, (32), 9 states have call successors, (23), 2 states have call predecessors, (23), 2 states have return successors, (21), 8 states have call predecessors, (21), 9 states have call successors, (21) [2022-04-28 05:52:13,082 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 260 states and 350 transitions. [2022-04-28 05:52:13,809 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 350 edges. 350 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:13,810 INFO L276 IsEmpty]: Start isEmpty. Operand 260 states and 350 transitions. [2022-04-28 05:52:13,810 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 130 [2022-04-28 05:52:13,810 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:13,810 INFO L195 NwaCegarLoop]: trace histogram [16, 15, 15, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 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] [2022-04-28 05:52:13,829 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-28 05:52:14,023 WARN L477 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-28 05:52:14,023 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:14,024 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:14,024 INFO L85 PathProgramCache]: Analyzing trace with hash -2138166692, now seen corresponding path program 7 times [2022-04-28 05:52:14,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:14,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2050455579] [2022-04-28 05:52:14,024 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:14,024 INFO L85 PathProgramCache]: Analyzing trace with hash -2138166692, now seen corresponding path program 8 times [2022-04-28 05:52:14,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:14,025 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [779418923] [2022-04-28 05:52:14,025 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:14,025 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:14,039 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:14,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2006301041] [2022-04-28 05:52:14,040 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:52:14,040 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:14,040 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:14,043 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-28 05:52:14,056 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-28 05:52:14,121 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:52:14,121 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:14,122 INFO L263 TraceCheckSpWp]: Trace formula consists of 306 conjuncts, 71 conjunts are in the unsatisfiable core [2022-04-28 05:52:14,144 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:14,164 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:24,171 INFO L272 TraceCheckUtils]: 0: Hoare triple {20538#true} call ULTIMATE.init(); {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L290 TraceCheckUtils]: 1: Hoare triple {20538#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); {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L290 TraceCheckUtils]: 2: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20538#true} {20538#true} #103#return; {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L272 TraceCheckUtils]: 4: Hoare triple {20538#true} call #t~ret6 := main(); {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L290 TraceCheckUtils]: 5: Hoare triple {20538#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L272 TraceCheckUtils]: 6: Hoare triple {20538#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L290 TraceCheckUtils]: 7: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L290 TraceCheckUtils]: 8: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L290 TraceCheckUtils]: 9: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20538#true} {20538#true} #79#return; {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L290 TraceCheckUtils]: 11: Hoare triple {20538#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L272 TraceCheckUtils]: 12: Hoare triple {20538#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,172 INFO L290 TraceCheckUtils]: 13: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,173 INFO L290 TraceCheckUtils]: 14: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,173 INFO L290 TraceCheckUtils]: 15: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,173 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {20538#true} {20538#true} #81#return; {20538#true} is VALID [2022-04-28 05:52:24,173 INFO L272 TraceCheckUtils]: 17: Hoare triple {20538#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,173 INFO L290 TraceCheckUtils]: 18: Hoare triple {20538#true} ~cond := #in~cond; {20597#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:52:24,173 INFO L290 TraceCheckUtils]: 19: Hoare triple {20597#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {20601#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:52:24,174 INFO L290 TraceCheckUtils]: 20: Hoare triple {20601#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {20601#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:52:24,174 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20601#(not (= |assume_abort_if_not_#in~cond| 0))} {20538#true} #83#return; {20608#(<= 1 main_~x~0)} is VALID [2022-04-28 05:52:24,174 INFO L272 TraceCheckUtils]: 22: Hoare triple {20608#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,174 INFO L290 TraceCheckUtils]: 23: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,174 INFO L290 TraceCheckUtils]: 24: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,174 INFO L290 TraceCheckUtils]: 25: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,175 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20538#true} {20608#(<= 1 main_~x~0)} #85#return; {20608#(<= 1 main_~x~0)} is VALID [2022-04-28 05:52:24,175 INFO L290 TraceCheckUtils]: 27: Hoare triple {20608#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {20627#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,175 INFO L272 TraceCheckUtils]: 28: Hoare triple {20627#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,175 INFO L290 TraceCheckUtils]: 29: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,175 INFO L290 TraceCheckUtils]: 30: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,175 INFO L290 TraceCheckUtils]: 31: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,176 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {20538#true} {20627#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {20627#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,176 INFO L272 TraceCheckUtils]: 33: Hoare triple {20627#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,176 INFO L290 TraceCheckUtils]: 34: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,176 INFO L290 TraceCheckUtils]: 35: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,176 INFO L290 TraceCheckUtils]: 36: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,177 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {20538#true} {20627#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {20627#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,177 INFO L290 TraceCheckUtils]: 38: Hoare triple {20627#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {20627#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,178 INFO L290 TraceCheckUtils]: 39: Hoare triple {20627#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,178 INFO L290 TraceCheckUtils]: 40: Hoare triple {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,178 INFO L272 TraceCheckUtils]: 41: Hoare triple {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {20538#true} is VALID [2022-04-28 05:52:24,179 INFO L290 TraceCheckUtils]: 42: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,179 INFO L290 TraceCheckUtils]: 43: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,179 INFO L290 TraceCheckUtils]: 44: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,179 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {20538#true} {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,180 INFO L272 TraceCheckUtils]: 46: Hoare triple {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {20538#true} is VALID [2022-04-28 05:52:24,180 INFO L290 TraceCheckUtils]: 47: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,180 INFO L290 TraceCheckUtils]: 48: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,180 INFO L290 TraceCheckUtils]: 49: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,180 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {20538#true} {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,181 INFO L272 TraceCheckUtils]: 51: Hoare triple {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {20538#true} is VALID [2022-04-28 05:52:24,181 INFO L290 TraceCheckUtils]: 52: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,181 INFO L290 TraceCheckUtils]: 53: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,181 INFO L290 TraceCheckUtils]: 54: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,181 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {20538#true} {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,181 INFO L272 TraceCheckUtils]: 56: Hoare triple {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,182 INFO L290 TraceCheckUtils]: 57: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,182 INFO L290 TraceCheckUtils]: 58: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,182 INFO L290 TraceCheckUtils]: 59: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,182 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {20538#true} {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,184 INFO L290 TraceCheckUtils]: 61: Hoare triple {20664#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,184 INFO L290 TraceCheckUtils]: 62: Hoare triple {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,184 INFO L272 TraceCheckUtils]: 63: Hoare triple {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {20538#true} is VALID [2022-04-28 05:52:24,185 INFO L290 TraceCheckUtils]: 64: Hoare triple {20538#true} ~cond := #in~cond; {20741#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:24,185 INFO L290 TraceCheckUtils]: 65: Hoare triple {20741#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:24,185 INFO L290 TraceCheckUtils]: 66: Hoare triple {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:24,186 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,186 INFO L272 TraceCheckUtils]: 68: Hoare triple {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {20538#true} is VALID [2022-04-28 05:52:24,186 INFO L290 TraceCheckUtils]: 69: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,186 INFO L290 TraceCheckUtils]: 70: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,186 INFO L290 TraceCheckUtils]: 71: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,187 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {20538#true} {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,187 INFO L272 TraceCheckUtils]: 73: Hoare triple {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {20538#true} is VALID [2022-04-28 05:52:24,187 INFO L290 TraceCheckUtils]: 74: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,187 INFO L290 TraceCheckUtils]: 75: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,187 INFO L290 TraceCheckUtils]: 76: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,188 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {20538#true} {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,188 INFO L272 TraceCheckUtils]: 78: Hoare triple {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,188 INFO L290 TraceCheckUtils]: 79: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,188 INFO L290 TraceCheckUtils]: 80: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,188 INFO L290 TraceCheckUtils]: 81: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,189 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {20538#true} {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,190 INFO L290 TraceCheckUtils]: 83: Hoare triple {20731#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {20800#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,190 INFO L290 TraceCheckUtils]: 84: Hoare triple {20800#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} assume !false; {20800#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,190 INFO L272 TraceCheckUtils]: 85: Hoare triple {20800#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,190 INFO L290 TraceCheckUtils]: 86: Hoare triple {20538#true} ~cond := #in~cond; {20741#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:24,191 INFO L290 TraceCheckUtils]: 87: Hoare triple {20741#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:24,191 INFO L290 TraceCheckUtils]: 88: Hoare triple {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:24,193 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} {20800#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} #91#return; {20819#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,193 INFO L272 TraceCheckUtils]: 90: Hoare triple {20819#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {20538#true} is VALID [2022-04-28 05:52:24,193 INFO L290 TraceCheckUtils]: 91: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,193 INFO L290 TraceCheckUtils]: 92: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,194 INFO L290 TraceCheckUtils]: 93: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,194 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {20538#true} {20819#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #93#return; {20819#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,194 INFO L272 TraceCheckUtils]: 95: Hoare triple {20819#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {20538#true} is VALID [2022-04-28 05:52:24,195 INFO L290 TraceCheckUtils]: 96: Hoare triple {20538#true} ~cond := #in~cond; {20741#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:24,195 INFO L290 TraceCheckUtils]: 97: Hoare triple {20741#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:24,195 INFO L290 TraceCheckUtils]: 98: Hoare triple {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:24,196 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} {20819#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #95#return; {20819#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,196 INFO L272 TraceCheckUtils]: 100: Hoare triple {20819#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,196 INFO L290 TraceCheckUtils]: 101: Hoare triple {20538#true} ~cond := #in~cond; {20741#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:24,197 INFO L290 TraceCheckUtils]: 102: Hoare triple {20741#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:24,197 INFO L290 TraceCheckUtils]: 103: Hoare triple {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:24,198 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} {20819#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #97#return; {20819#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,198 INFO L290 TraceCheckUtils]: 105: Hoare triple {20819#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {20868#(and (= main_~r~0 0) (< main_~c~0 main_~y~0) (= main_~s~0 1) (<= (* main_~y~0 2) (+ main_~c~0 (* main_~k~0 main_~y~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (= (* main_~y~0 2) (* main_~k~0 main_~y~0)) (= main_~p~0 1))} is VALID [2022-04-28 05:52:24,200 INFO L290 TraceCheckUtils]: 106: Hoare triple {20868#(and (= main_~r~0 0) (< main_~c~0 main_~y~0) (= main_~s~0 1) (<= (* main_~y~0 2) (+ main_~c~0 (* main_~k~0 main_~y~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (= (* main_~y~0 2) (* main_~k~0 main_~y~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; {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:52:24,201 INFO L290 TraceCheckUtils]: 107: Hoare triple {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:52:24,201 INFO L290 TraceCheckUtils]: 108: Hoare triple {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:52:24,202 INFO L290 TraceCheckUtils]: 109: Hoare triple {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:52:24,202 INFO L272 TraceCheckUtils]: 110: Hoare triple {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,202 INFO L290 TraceCheckUtils]: 111: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,202 INFO L290 TraceCheckUtils]: 112: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,202 INFO L290 TraceCheckUtils]: 113: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,203 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {20538#true} {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:52:24,203 INFO L272 TraceCheckUtils]: 115: Hoare triple {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,203 INFO L290 TraceCheckUtils]: 116: Hoare triple {20538#true} ~cond := #in~cond; {20538#true} is VALID [2022-04-28 05:52:24,203 INFO L290 TraceCheckUtils]: 117: Hoare triple {20538#true} assume !(0 == ~cond); {20538#true} is VALID [2022-04-28 05:52:24,203 INFO L290 TraceCheckUtils]: 118: Hoare triple {20538#true} assume true; {20538#true} is VALID [2022-04-28 05:52:24,204 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {20538#true} {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:52:24,204 INFO L272 TraceCheckUtils]: 120: Hoare triple {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20538#true} is VALID [2022-04-28 05:52:24,204 INFO L290 TraceCheckUtils]: 121: Hoare triple {20538#true} ~cond := #in~cond; {20741#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:24,204 INFO L290 TraceCheckUtils]: 122: Hoare triple {20741#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:24,204 INFO L290 TraceCheckUtils]: 123: Hoare triple {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:24,205 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {20745#(not (= |__VERIFIER_assert_#in~cond| 0))} {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:52:24,207 INFO L272 TraceCheckUtils]: 125: Hoare triple {20872#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {20930#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:24,207 INFO L290 TraceCheckUtils]: 126: Hoare triple {20930#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20934#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:24,208 INFO L290 TraceCheckUtils]: 127: Hoare triple {20934#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {20539#false} is VALID [2022-04-28 05:52:24,208 INFO L290 TraceCheckUtils]: 128: Hoare triple {20539#false} assume !false; {20539#false} is VALID [2022-04-28 05:52:24,208 INFO L134 CoverageAnalysis]: Checked inductivity of 545 backedges. 142 proven. 88 refuted. 0 times theorem prover too weak. 315 trivial. 0 not checked. [2022-04-28 05:52:24,208 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:54:02,711 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:54:14,616 WARN L232 SmtUtils]: Spent 8.27s on a formula simplification that was a NOOP. DAG size: 74 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-28 05:54:14,618 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:54:14,618 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [779418923] [2022-04-28 05:54:14,618 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:54:14,618 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2006301041] [2022-04-28 05:54:14,618 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2006301041] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 05:54:14,618 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:54:14,618 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2022-04-28 05:54:14,618 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:54:14,618 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2050455579] [2022-04-28 05:54:14,619 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2050455579] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:54:14,619 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:54:14,619 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 05:54:14,619 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2105145449] [2022-04-28 05:54:14,619 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:54:14,619 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) Word has length 129 [2022-04-28 05:54:14,620 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:54:14,620 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-28 05:54:14,717 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-28 05:54:14,717 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 05:54:14,717 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:14,718 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 05:54:14,718 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=114, Invalid=438, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:54:14,718 INFO L87 Difference]: Start difference. First operand 260 states and 350 transitions. Second operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-28 05:54:20,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:20,374 INFO L93 Difference]: Finished difference Result 268 states and 357 transitions. [2022-04-28 05:54:20,374 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 05:54:20,374 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) Word has length 129 [2022-04-28 05:54:20,375 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:54:20,375 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-28 05:54:20,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 113 transitions. [2022-04-28 05:54:20,376 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-28 05:54:20,377 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 113 transitions. [2022-04-28 05:54:20,377 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 113 transitions. [2022-04-28 05:54:20,533 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:20,537 INFO L225 Difference]: With dead ends: 268 [2022-04-28 05:54:20,537 INFO L226 Difference]: Without dead ends: 266 [2022-04-28 05:54:20,538 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 141 SyntacticMatches, 5 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 180 ImplicationChecksByTransitivity, 14.9s TimeCoverageRelationStatistics Valid=159, Invalid=653, Unknown=0, NotChecked=0, Total=812 [2022-04-28 05:54:20,538 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 41 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 665 mSolverCounterSat, 66 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 200 SdHoareTripleChecker+Invalid, 731 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 66 IncrementalHoareTripleChecker+Valid, 665 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:54:20,538 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [51 Valid, 200 Invalid, 731 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [66 Valid, 665 Invalid, 0 Unknown, 0 Unchecked, 2.2s Time] [2022-04-28 05:54:20,539 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 266 states. [2022-04-28 05:54:21,126 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 266 to 264. [2022-04-28 05:54:21,126 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:54:21,126 INFO L82 GeneralOperation]: Start isEquivalent. First operand 266 states. Second operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-28 05:54:21,127 INFO L74 IsIncluded]: Start isIncluded. First operand 266 states. Second operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-28 05:54:21,127 INFO L87 Difference]: Start difference. First operand 266 states. Second operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-28 05:54:21,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:21,132 INFO L93 Difference]: Finished difference Result 266 states and 355 transitions. [2022-04-28 05:54:21,132 INFO L276 IsEmpty]: Start isEmpty. Operand 266 states and 355 transitions. [2022-04-28 05:54:21,133 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:21,133 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:21,134 INFO L74 IsIncluded]: Start isIncluded. First operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) Second operand 266 states. [2022-04-28 05:54:21,134 INFO L87 Difference]: Start difference. First operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) Second operand 266 states. [2022-04-28 05:54:21,139 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:54:21,139 INFO L93 Difference]: Finished difference Result 266 states and 355 transitions. [2022-04-28 05:54:21,139 INFO L276 IsEmpty]: Start isEmpty. Operand 266 states and 355 transitions. [2022-04-28 05:54:21,140 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:54:21,140 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:54:21,140 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:54:21,140 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:54:21,140 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 264 states, 142 states have (on average 1.1338028169014085) internal successors, (161), 143 states have internal predecessors, (161), 97 states have call successors, (97), 25 states have call predecessors, (97), 24 states have return successors, (95), 95 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-28 05:54:21,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 264 states to 264 states and 353 transitions. [2022-04-28 05:54:21,148 INFO L78 Accepts]: Start accepts. Automaton has 264 states and 353 transitions. Word has length 129 [2022-04-28 05:54:21,148 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:54:21,148 INFO L495 AbstractCegarLoop]: Abstraction has 264 states and 353 transitions. [2022-04-28 05:54:21,148 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 8 states have call successors, (24), 2 states have call predecessors, (24), 3 states have return successors, (22), 7 states have call predecessors, (22), 8 states have call successors, (22) [2022-04-28 05:54:21,148 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 264 states and 353 transitions. [2022-04-28 05:54:21,911 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 353 edges. 353 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:54:21,912 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 353 transitions. [2022-04-28 05:54:21,912 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 133 [2022-04-28 05:54:21,912 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:54:21,912 INFO L195 NwaCegarLoop]: trace histogram [16, 15, 15, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:54:21,929 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-28 05:54:22,113 WARN L477 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-28 05:54:22,113 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:54:22,113 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:54:22,113 INFO L85 PathProgramCache]: Analyzing trace with hash -1899875875, now seen corresponding path program 9 times [2022-04-28 05:54:22,113 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:54:22,114 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [243987303] [2022-04-28 05:54:22,114 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:54:22,114 INFO L85 PathProgramCache]: Analyzing trace with hash -1899875875, now seen corresponding path program 10 times [2022-04-28 05:54:22,114 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:54:22,114 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2045604977] [2022-04-28 05:54:22,114 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:54:22,114 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:54:22,125 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:54:22,125 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [848457948] [2022-04-28 05:54:22,125 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:54:22,125 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:54:22,125 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:54:22,126 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-28 05:54:22,146 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-28 05:54:22,196 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:54:22,197 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:54:22,198 INFO L263 TraceCheckSpWp]: Trace formula consists of 275 conjuncts, 79 conjunts are in the unsatisfiable core [2022-04-28 05:54:22,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:54:22,225 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:54:24,318 INFO L272 TraceCheckUtils]: 0: Hoare triple {22674#true} call ULTIMATE.init(); {22674#true} is VALID [2022-04-28 05:54:24,318 INFO L290 TraceCheckUtils]: 1: Hoare triple {22674#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); {22674#true} is VALID [2022-04-28 05:54:24,318 INFO L290 TraceCheckUtils]: 2: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,318 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22674#true} {22674#true} #103#return; {22674#true} is VALID [2022-04-28 05:54:24,318 INFO L272 TraceCheckUtils]: 4: Hoare triple {22674#true} call #t~ret6 := main(); {22674#true} is VALID [2022-04-28 05:54:24,318 INFO L290 TraceCheckUtils]: 5: Hoare triple {22674#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {22674#true} is VALID [2022-04-28 05:54:24,318 INFO L272 TraceCheckUtils]: 6: Hoare triple {22674#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,318 INFO L290 TraceCheckUtils]: 7: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,318 INFO L290 TraceCheckUtils]: 8: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L290 TraceCheckUtils]: 9: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22674#true} {22674#true} #79#return; {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L290 TraceCheckUtils]: 11: Hoare triple {22674#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L272 TraceCheckUtils]: 12: Hoare triple {22674#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L290 TraceCheckUtils]: 13: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L290 TraceCheckUtils]: 14: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L290 TraceCheckUtils]: 15: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {22674#true} {22674#true} #81#return; {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L272 TraceCheckUtils]: 17: Hoare triple {22674#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L290 TraceCheckUtils]: 18: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L290 TraceCheckUtils]: 19: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L290 TraceCheckUtils]: 20: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {22674#true} {22674#true} #83#return; {22674#true} is VALID [2022-04-28 05:54:24,319 INFO L272 TraceCheckUtils]: 22: Hoare triple {22674#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,320 INFO L290 TraceCheckUtils]: 23: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,320 INFO L290 TraceCheckUtils]: 24: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,320 INFO L290 TraceCheckUtils]: 25: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,320 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {22674#true} {22674#true} #85#return; {22674#true} is VALID [2022-04-28 05:54:24,320 INFO L290 TraceCheckUtils]: 27: Hoare triple {22674#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {22760#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:24,320 INFO L272 TraceCheckUtils]: 28: Hoare triple {22760#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,320 INFO L290 TraceCheckUtils]: 29: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,320 INFO L290 TraceCheckUtils]: 30: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,320 INFO L290 TraceCheckUtils]: 31: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,321 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {22674#true} {22760#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {22760#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:24,321 INFO L272 TraceCheckUtils]: 33: Hoare triple {22760#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,321 INFO L290 TraceCheckUtils]: 34: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,321 INFO L290 TraceCheckUtils]: 35: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,321 INFO L290 TraceCheckUtils]: 36: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,322 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {22674#true} {22760#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {22760#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:24,322 INFO L290 TraceCheckUtils]: 38: Hoare triple {22760#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {22760#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:24,323 INFO L290 TraceCheckUtils]: 39: Hoare triple {22760#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:24,323 INFO L290 TraceCheckUtils]: 40: Hoare triple {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:24,323 INFO L272 TraceCheckUtils]: 41: Hoare triple {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {22674#true} is VALID [2022-04-28 05:54:24,323 INFO L290 TraceCheckUtils]: 42: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,324 INFO L290 TraceCheckUtils]: 43: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,324 INFO L290 TraceCheckUtils]: 44: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,324 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {22674#true} {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #91#return; {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:24,324 INFO L272 TraceCheckUtils]: 46: Hoare triple {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {22674#true} is VALID [2022-04-28 05:54:24,324 INFO L290 TraceCheckUtils]: 47: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,325 INFO L290 TraceCheckUtils]: 48: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,325 INFO L290 TraceCheckUtils]: 49: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,325 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {22674#true} {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #93#return; {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:24,325 INFO L272 TraceCheckUtils]: 51: Hoare triple {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {22674#true} is VALID [2022-04-28 05:54:24,326 INFO L290 TraceCheckUtils]: 52: Hoare triple {22674#true} ~cond := #in~cond; {22837#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:24,326 INFO L290 TraceCheckUtils]: 53: Hoare triple {22837#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:24,326 INFO L290 TraceCheckUtils]: 54: Hoare triple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:24,327 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:24,327 INFO L272 TraceCheckUtils]: 56: Hoare triple {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,327 INFO L290 TraceCheckUtils]: 57: Hoare triple {22674#true} ~cond := #in~cond; {22837#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:24,327 INFO L290 TraceCheckUtils]: 58: Hoare triple {22837#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:24,328 INFO L290 TraceCheckUtils]: 59: Hoare triple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:24,329 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} {22797#(and (= main_~r~0 0) (<= (* main_~y~0 main_~y~0) main_~yy~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {22863#(and (= main_~r~0 0) (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:24,329 INFO L290 TraceCheckUtils]: 61: Hoare triple {22863#(and (= main_~r~0 0) (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {22867#(and (= main_~r~0 0) (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:54:24,334 INFO L290 TraceCheckUtils]: 62: Hoare triple {22867#(and (= main_~r~0 0) (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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; {22871#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,335 INFO L290 TraceCheckUtils]: 63: Hoare triple {22871#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {22871#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,335 INFO L290 TraceCheckUtils]: 64: Hoare triple {22871#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,337 INFO L290 TraceCheckUtils]: 65: Hoare triple {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,337 INFO L272 TraceCheckUtils]: 66: Hoare triple {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,337 INFO L290 TraceCheckUtils]: 67: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,337 INFO L290 TraceCheckUtils]: 68: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,337 INFO L290 TraceCheckUtils]: 69: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,338 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {22674#true} {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,338 INFO L272 TraceCheckUtils]: 71: Hoare triple {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,338 INFO L290 TraceCheckUtils]: 72: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,338 INFO L290 TraceCheckUtils]: 73: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,338 INFO L290 TraceCheckUtils]: 74: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,339 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {22674#true} {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,339 INFO L272 TraceCheckUtils]: 76: Hoare triple {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,339 INFO L290 TraceCheckUtils]: 77: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,339 INFO L290 TraceCheckUtils]: 78: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,339 INFO L290 TraceCheckUtils]: 79: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,340 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {22674#true} {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,340 INFO L272 TraceCheckUtils]: 81: Hoare triple {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,340 INFO L290 TraceCheckUtils]: 82: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,340 INFO L290 TraceCheckUtils]: 83: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,340 INFO L290 TraceCheckUtils]: 84: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,341 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {22674#true} {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #97#return; {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,343 INFO L290 TraceCheckUtils]: 86: Hoare triple {22878#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {22945#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,343 INFO L290 TraceCheckUtils]: 87: Hoare triple {22945#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {22945#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,343 INFO L272 TraceCheckUtils]: 88: Hoare triple {22945#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,343 INFO L290 TraceCheckUtils]: 89: Hoare triple {22674#true} ~cond := #in~cond; {22837#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:24,344 INFO L290 TraceCheckUtils]: 90: Hoare triple {22837#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:24,344 INFO L290 TraceCheckUtils]: 91: Hoare triple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:24,345 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} {22945#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {22945#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,345 INFO L272 TraceCheckUtils]: 93: Hoare triple {22945#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,345 INFO L290 TraceCheckUtils]: 94: Hoare triple {22674#true} ~cond := #in~cond; {22837#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:24,345 INFO L290 TraceCheckUtils]: 95: Hoare triple {22837#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:24,346 INFO L290 TraceCheckUtils]: 96: Hoare triple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:24,349 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} {22945#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= main_~a~0 main_~x~0)) (= (+ main_~a~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~a~0 main_~y~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {22979#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:54:24,349 INFO L272 TraceCheckUtils]: 98: Hoare triple {22979#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,349 INFO L290 TraceCheckUtils]: 99: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,349 INFO L290 TraceCheckUtils]: 100: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,349 INFO L290 TraceCheckUtils]: 101: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,350 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {22674#true} {22979#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #95#return; {22979#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:54:24,350 INFO L272 TraceCheckUtils]: 103: Hoare triple {22979#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,350 INFO L290 TraceCheckUtils]: 104: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,350 INFO L290 TraceCheckUtils]: 105: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,350 INFO L290 TraceCheckUtils]: 106: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,351 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {22674#true} {22979#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #97#return; {22979#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:54:24,351 INFO L290 TraceCheckUtils]: 108: Hoare triple {22979#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~c~0 main_~b~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ (* main_~b~0 main_~y~0) main_~y~0 (* main_~p~0 main_~x~0) (* main_~c~0 main_~y~0))) (< main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {23013#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (< 0 main_~c~0) (= main_~s~0 0) (not (<= main_~x~0 main_~c~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~c~0 main_~x~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~p~0 main_~x~0) (* main_~y~0 main_~x~0) (* main_~c~0 main_~y~0))))} is VALID [2022-04-28 05:54:24,353 INFO L290 TraceCheckUtils]: 109: Hoare triple {23013#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (< 0 main_~c~0) (= main_~s~0 0) (not (<= main_~x~0 main_~c~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~c~0 main_~x~0 (* main_~p~0 main_~xy~0) main_~yy~0) (+ main_~y~0 (* main_~p~0 main_~x~0) (* main_~y~0 main_~x~0) (* main_~c~0 main_~y~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; {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,354 INFO L290 TraceCheckUtils]: 110: Hoare triple {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,354 INFO L290 TraceCheckUtils]: 111: Hoare triple {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,355 INFO L290 TraceCheckUtils]: 112: Hoare triple {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,355 INFO L272 TraceCheckUtils]: 113: Hoare triple {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,355 INFO L290 TraceCheckUtils]: 114: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,355 INFO L290 TraceCheckUtils]: 115: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,355 INFO L290 TraceCheckUtils]: 116: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,356 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {22674#true} {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,356 INFO L272 TraceCheckUtils]: 118: Hoare triple {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,356 INFO L290 TraceCheckUtils]: 119: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:54:24,356 INFO L290 TraceCheckUtils]: 120: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:54:24,356 INFO L290 TraceCheckUtils]: 121: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:54:24,357 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {22674#true} {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,357 INFO L272 TraceCheckUtils]: 123: Hoare triple {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:54:24,357 INFO L290 TraceCheckUtils]: 124: Hoare triple {22674#true} ~cond := #in~cond; {22837#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:24,357 INFO L290 TraceCheckUtils]: 125: Hoare triple {22837#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:24,358 INFO L290 TraceCheckUtils]: 126: Hoare triple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:54:24,358 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 05:54:24,360 INFO L272 TraceCheckUtils]: 128: Hoare triple {23017#(and (= (+ (* main_~y~0 (+ main_~y~0 (* (- 1) main_~x~0))) main_~y~0 (* main_~y~0 main_~x~0)) (+ main_~y~0 main_~yy~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {23075#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:54:24,360 INFO L290 TraceCheckUtils]: 129: Hoare triple {23075#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23079#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:54:24,361 INFO L290 TraceCheckUtils]: 130: Hoare triple {23079#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22675#false} is VALID [2022-04-28 05:54:24,361 INFO L290 TraceCheckUtils]: 131: Hoare triple {22675#false} assume !false; {22675#false} is VALID [2022-04-28 05:54:24,361 INFO L134 CoverageAnalysis]: Checked inductivity of 550 backedges. 103 proven. 117 refuted. 0 times theorem prover too weak. 330 trivial. 0 not checked. [2022-04-28 05:54:24,361 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:17,948 WARN L232 SmtUtils]: Spent 8.47s on a formula simplification that was a NOOP. DAG size: 52 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-28 05:56:45,059 INFO L290 TraceCheckUtils]: 131: Hoare triple {22675#false} assume !false; {22675#false} is VALID [2022-04-28 05:56:45,060 INFO L290 TraceCheckUtils]: 130: Hoare triple {23079#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22675#false} is VALID [2022-04-28 05:56:45,061 INFO L290 TraceCheckUtils]: 129: Hoare triple {23075#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {23079#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:45,061 INFO L272 TraceCheckUtils]: 128: Hoare triple {23095#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {23075#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:56:45,062 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {23095#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))} is VALID [2022-04-28 05:56:45,062 INFO L290 TraceCheckUtils]: 126: Hoare triple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:45,063 INFO L290 TraceCheckUtils]: 125: Hoare triple {23109#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:45,063 INFO L290 TraceCheckUtils]: 124: Hoare triple {22674#true} ~cond := #in~cond; {23109#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:56:45,063 INFO L272 TraceCheckUtils]: 123: Hoare triple {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {22674#true} is VALID [2022-04-28 05:56:45,064 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {22674#true} {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #93#return; {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:56:45,064 INFO L290 TraceCheckUtils]: 121: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:45,064 INFO L290 TraceCheckUtils]: 120: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:45,064 INFO L290 TraceCheckUtils]: 119: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:45,064 INFO L272 TraceCheckUtils]: 118: Hoare triple {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {22674#true} is VALID [2022-04-28 05:56:45,065 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {22674#true} {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #91#return; {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:56:45,065 INFO L290 TraceCheckUtils]: 116: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:45,065 INFO L290 TraceCheckUtils]: 115: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:45,065 INFO L290 TraceCheckUtils]: 114: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:45,065 INFO L272 TraceCheckUtils]: 113: Hoare triple {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {22674#true} is VALID [2022-04-28 05:56:45,065 INFO L290 TraceCheckUtils]: 112: Hoare triple {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:56:45,066 INFO L290 TraceCheckUtils]: 111: Hoare triple {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:56:45,066 INFO L290 TraceCheckUtils]: 110: Hoare triple {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:56:47,068 WARN L290 TraceCheckUtils]: 109: Hoare triple {23155#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} ~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; {23099#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is UNKNOWN [2022-04-28 05:56:47,069 INFO L290 TraceCheckUtils]: 108: Hoare triple {23159#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} assume !(~c~0 >= ~b~0); {23155#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-28 05:56:47,069 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {22674#true} {23159#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} #97#return; {23159#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-28 05:56:47,070 INFO L290 TraceCheckUtils]: 106: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:47,070 INFO L290 TraceCheckUtils]: 105: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:47,070 INFO L290 TraceCheckUtils]: 104: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:47,070 INFO L272 TraceCheckUtils]: 103: Hoare triple {23159#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:47,070 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {22674#true} {23159#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} #95#return; {23159#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-28 05:56:47,071 INFO L290 TraceCheckUtils]: 101: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:47,071 INFO L290 TraceCheckUtils]: 100: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:47,071 INFO L290 TraceCheckUtils]: 99: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:47,071 INFO L272 TraceCheckUtils]: 98: Hoare triple {23159#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:47,072 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} {23193#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} #93#return; {23159#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-28 05:56:47,072 INFO L290 TraceCheckUtils]: 96: Hoare triple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:47,072 INFO L290 TraceCheckUtils]: 95: Hoare triple {23109#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:47,073 INFO L290 TraceCheckUtils]: 94: Hoare triple {22674#true} ~cond := #in~cond; {23109#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:56:47,073 INFO L272 TraceCheckUtils]: 93: Hoare triple {23193#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:47,074 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} {23209#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #91#return; {23193#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-28 05:56:47,074 INFO L290 TraceCheckUtils]: 91: Hoare triple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:47,074 INFO L290 TraceCheckUtils]: 90: Hoare triple {23109#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:47,075 INFO L290 TraceCheckUtils]: 89: Hoare triple {22674#true} ~cond := #in~cond; {23109#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:56:47,075 INFO L272 TraceCheckUtils]: 88: Hoare triple {23209#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:47,075 INFO L290 TraceCheckUtils]: 87: Hoare triple {23209#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} assume !false; {23209#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-28 05:56:49,079 WARN L290 TraceCheckUtils]: 86: Hoare triple {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {23209#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (<= main_~b~0 main_~c~0) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is UNKNOWN [2022-04-28 05:56:49,080 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {22674#true} {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:49,080 INFO L290 TraceCheckUtils]: 84: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:49,080 INFO L290 TraceCheckUtils]: 83: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:49,080 INFO L290 TraceCheckUtils]: 82: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:49,080 INFO L272 TraceCheckUtils]: 81: Hoare triple {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:49,081 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {22674#true} {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:49,081 INFO L290 TraceCheckUtils]: 79: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:49,081 INFO L290 TraceCheckUtils]: 78: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:49,081 INFO L290 TraceCheckUtils]: 77: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:49,081 INFO L272 TraceCheckUtils]: 76: Hoare triple {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~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)); {22674#true} is VALID [2022-04-28 05:56:49,082 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {22674#true} {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:49,082 INFO L290 TraceCheckUtils]: 74: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:49,082 INFO L290 TraceCheckUtils]: 73: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:49,082 INFO L290 TraceCheckUtils]: 72: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:49,082 INFO L272 TraceCheckUtils]: 71: Hoare triple {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~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)); {22674#true} is VALID [2022-04-28 05:56:49,083 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {22674#true} {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:49,083 INFO L290 TraceCheckUtils]: 69: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:49,083 INFO L290 TraceCheckUtils]: 68: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:49,083 INFO L290 TraceCheckUtils]: 67: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:49,083 INFO L272 TraceCheckUtils]: 66: Hoare triple {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~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)); {22674#true} is VALID [2022-04-28 05:56:49,084 INFO L290 TraceCheckUtils]: 65: Hoare triple {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:49,085 INFO L290 TraceCheckUtils]: 64: Hoare triple {23295#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {23228#(or (not (= (+ (* 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_~k~0 1) main_~b~0)) main_~a~0)) (= (+ (* 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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))) (<= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:56:49,085 INFO L290 TraceCheckUtils]: 63: Hoare triple {23295#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)))))} assume !false; {23295#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:56:51,088 WARN L290 TraceCheckUtils]: 62: Hoare triple {23302#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~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 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~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; {23295#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)))))} is UNKNOWN [2022-04-28 05:56:51,089 INFO L290 TraceCheckUtils]: 61: Hoare triple {23306#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} assume !(~c~0 >= ~b~0); {23302#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~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 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-28 05:56:51,091 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} #97#return; {23306#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-28 05:56:51,091 INFO L290 TraceCheckUtils]: 59: Hoare triple {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:51,096 INFO L290 TraceCheckUtils]: 58: Hoare triple {23109#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {22841#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:51,097 INFO L290 TraceCheckUtils]: 57: Hoare triple {22674#true} ~cond := #in~cond; {23109#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:56:51,097 INFO L272 TraceCheckUtils]: 56: Hoare triple {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:51,098 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {22674#true} {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} #95#return; {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-28 05:56:51,098 INFO L290 TraceCheckUtils]: 54: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:51,098 INFO L290 TraceCheckUtils]: 53: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:51,098 INFO L290 TraceCheckUtils]: 52: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:51,098 INFO L272 TraceCheckUtils]: 51: Hoare triple {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:51,099 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {22674#true} {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} #93#return; {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-28 05:56:51,099 INFO L290 TraceCheckUtils]: 49: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:51,099 INFO L290 TraceCheckUtils]: 48: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:51,099 INFO L290 TraceCheckUtils]: 47: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:51,099 INFO L272 TraceCheckUtils]: 46: Hoare triple {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:51,100 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {22674#true} {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} #91#return; {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-28 05:56:51,100 INFO L290 TraceCheckUtils]: 44: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:51,100 INFO L290 TraceCheckUtils]: 43: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:51,100 INFO L290 TraceCheckUtils]: 42: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:51,100 INFO L272 TraceCheckUtils]: 41: Hoare triple {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:51,101 INFO L290 TraceCheckUtils]: 40: Hoare triple {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} assume !false; {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-28 05:56:51,103 INFO L290 TraceCheckUtils]: 39: Hoare triple {23374#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {23310#(or (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) main_~b~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~r~0) (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ (* main_~s~0 main_~yy~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~y~0 main_~x~0) (* main_~q~0 main_~xy~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* main_~y~0 main_~y~0 main_~s~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0))))} is VALID [2022-04-28 05:56:51,104 INFO L290 TraceCheckUtils]: 38: Hoare triple {23374#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {23374#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:56:51,104 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {22674#true} {23374#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #89#return; {23374#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:56:51,105 INFO L290 TraceCheckUtils]: 36: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:51,105 INFO L290 TraceCheckUtils]: 35: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:51,105 INFO L290 TraceCheckUtils]: 34: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:51,105 INFO L272 TraceCheckUtils]: 33: Hoare triple {23374#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:51,105 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {22674#true} {23374#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #87#return; {23374#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:56:51,106 INFO L290 TraceCheckUtils]: 31: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:51,106 INFO L290 TraceCheckUtils]: 30: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:51,106 INFO L290 TraceCheckUtils]: 29: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:51,106 INFO L272 TraceCheckUtils]: 28: Hoare triple {23374#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:51,107 INFO L290 TraceCheckUtils]: 27: Hoare triple {22674#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {23374#(or (<= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (<= (+ main_~b~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0))) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2))) (= (+ (* main_~s~0 main_~yy~0) (* main_~y~0 main_~y~0 main_~r~0) (* main_~q~0 main_~xy~0) (* main_~p~0 main_~y~0 main_~x~0)) (+ (* main_~q~0 main_~y~0 main_~x~0) (* main_~y~0 main_~y~0 main_~s~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (not (= (+ (* (- 1) main_~p~0 main_~x~0) (* main_~q~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0 0) (* (- 1) main_~y~0 main_~r~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0) (* main_~y~0 main_~s~0 0) (* main_~y~0 main_~s~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:56:51,107 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {22674#true} {22674#true} #85#return; {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L290 TraceCheckUtils]: 25: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L290 TraceCheckUtils]: 24: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L290 TraceCheckUtils]: 23: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L272 TraceCheckUtils]: 22: Hoare triple {22674#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {22674#true} {22674#true} #83#return; {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L290 TraceCheckUtils]: 20: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L290 TraceCheckUtils]: 19: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L290 TraceCheckUtils]: 18: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L272 TraceCheckUtils]: 17: Hoare triple {22674#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {22674#true} {22674#true} #81#return; {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L290 TraceCheckUtils]: 15: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L290 TraceCheckUtils]: 14: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L290 TraceCheckUtils]: 13: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L272 TraceCheckUtils]: 12: Hoare triple {22674#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:51,108 INFO L290 TraceCheckUtils]: 11: Hoare triple {22674#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {22674#true} is VALID [2022-04-28 05:56:51,109 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22674#true} {22674#true} #79#return; {22674#true} is VALID [2022-04-28 05:56:51,109 INFO L290 TraceCheckUtils]: 9: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:51,109 INFO L290 TraceCheckUtils]: 8: Hoare triple {22674#true} assume !(0 == ~cond); {22674#true} is VALID [2022-04-28 05:56:51,109 INFO L290 TraceCheckUtils]: 7: Hoare triple {22674#true} ~cond := #in~cond; {22674#true} is VALID [2022-04-28 05:56:51,109 INFO L272 TraceCheckUtils]: 6: Hoare triple {22674#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {22674#true} is VALID [2022-04-28 05:56:51,109 INFO L290 TraceCheckUtils]: 5: Hoare triple {22674#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {22674#true} is VALID [2022-04-28 05:56:51,109 INFO L272 TraceCheckUtils]: 4: Hoare triple {22674#true} call #t~ret6 := main(); {22674#true} is VALID [2022-04-28 05:56:51,109 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22674#true} {22674#true} #103#return; {22674#true} is VALID [2022-04-28 05:56:51,109 INFO L290 TraceCheckUtils]: 2: Hoare triple {22674#true} assume true; {22674#true} is VALID [2022-04-28 05:56:51,109 INFO L290 TraceCheckUtils]: 1: Hoare triple {22674#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); {22674#true} is VALID [2022-04-28 05:56:51,109 INFO L272 TraceCheckUtils]: 0: Hoare triple {22674#true} call ULTIMATE.init(); {22674#true} is VALID [2022-04-28 05:56:51,110 INFO L134 CoverageAnalysis]: Checked inductivity of 550 backedges. 112 proven. 88 refuted. 2 times theorem prover too weak. 348 trivial. 0 not checked. [2022-04-28 05:56:51,110 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:51,110 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2045604977] [2022-04-28 05:56:51,110 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:51,110 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [848457948] [2022-04-28 05:56:51,110 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [848457948] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:51,110 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:51,110 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 18] total 29 [2022-04-28 05:56:51,111 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:51,111 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [243987303] [2022-04-28 05:56:51,111 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [243987303] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:51,111 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:51,111 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 05:56:51,111 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1076652532] [2022-04-28 05:56:51,111 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:51,111 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) Word has length 132 [2022-04-28 05:56:51,112 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:51,112 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-28 05:56:51,218 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-28 05:56:51,218 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 05:56:51,218 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:51,218 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 05:56:51,218 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=179, Invalid=628, Unknown=5, NotChecked=0, Total=812 [2022-04-28 05:56:51,224 INFO L87 Difference]: Start difference. First operand 264 states and 353 transitions. Second operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-28 05:56:56,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:56,795 INFO L93 Difference]: Finished difference Result 277 states and 364 transitions. [2022-04-28 05:56:56,795 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 05:56:56,795 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) Word has length 132 [2022-04-28 05:56:56,795 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:56,795 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-28 05:56:56,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-28 05:56:56,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-28 05:56:56,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 125 transitions. [2022-04-28 05:56:56,798 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 125 transitions. [2022-04-28 05:56:57,004 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:57,009 INFO L225 Difference]: With dead ends: 277 [2022-04-28 05:56:57,009 INFO L226 Difference]: Without dead ends: 275 [2022-04-28 05:56:57,009 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 269 GetRequests, 232 SyntacticMatches, 4 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 241 ImplicationChecksByTransitivity, 28.5s TimeCoverageRelationStatistics Valid=258, Invalid=927, Unknown=5, NotChecked=0, Total=1190 [2022-04-28 05:56:57,010 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 29 mSDsluCounter, 264 mSDsCounter, 0 mSdLazyCounter, 748 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 314 SdHoareTripleChecker+Invalid, 781 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 748 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:57,011 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [41 Valid, 314 Invalid, 781 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 748 Invalid, 0 Unknown, 0 Unchecked, 2.1s Time] [2022-04-28 05:56:57,015 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 275 states. [2022-04-28 05:56:57,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 275 to 239. [2022-04-28 05:56:57,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:57,565 INFO L82 GeneralOperation]: Start isEquivalent. First operand 275 states. Second operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 05:56:57,565 INFO L74 IsIncluded]: Start isIncluded. First operand 275 states. Second operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 05:56:57,565 INFO L87 Difference]: Start difference. First operand 275 states. Second operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 05:56:57,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:57,570 INFO L93 Difference]: Finished difference Result 275 states and 362 transitions. [2022-04-28 05:56:57,570 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 362 transitions. [2022-04-28 05:56:57,571 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:57,571 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:57,571 INFO L74 IsIncluded]: Start isIncluded. First operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 275 states. [2022-04-28 05:56:57,571 INFO L87 Difference]: Start difference. First operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) Second operand 275 states. [2022-04-28 05:56:57,576 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:57,576 INFO L93 Difference]: Finished difference Result 275 states and 362 transitions. [2022-04-28 05:56:57,576 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 362 transitions. [2022-04-28 05:56:57,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:57,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:57,576 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:57,576 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:57,577 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 239 states, 130 states have (on average 1.1307692307692307) internal successors, (147), 131 states have internal predecessors, (147), 85 states have call successors, (85), 24 states have call predecessors, (85), 23 states have return successors, (83), 83 states have call predecessors, (83), 83 states have call successors, (83) [2022-04-28 05:56:57,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 239 states to 239 states and 315 transitions. [2022-04-28 05:56:57,581 INFO L78 Accepts]: Start accepts. Automaton has 239 states and 315 transitions. Word has length 132 [2022-04-28 05:56:57,581 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:57,581 INFO L495 AbstractCegarLoop]: Abstraction has 239 states and 315 transitions. [2022-04-28 05:56:57,581 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.0) internal successors, (32), 13 states have internal predecessors, (32), 7 states have call successors, (24), 2 states have call predecessors, (24), 2 states have return successors, (22), 8 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-28 05:56:57,581 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 239 states and 315 transitions. [2022-04-28 05:56:58,320 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 315 edges. 315 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:58,320 INFO L276 IsEmpty]: Start isEmpty. Operand 239 states and 315 transitions. [2022-04-28 05:56:58,321 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 136 [2022-04-28 05:56:58,321 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:58,321 INFO L195 NwaCegarLoop]: trace histogram [17, 16, 16, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:58,341 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-28 05:56:58,521 WARN L477 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-28 05:56:58,522 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:58,522 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:58,522 INFO L85 PathProgramCache]: Analyzing trace with hash 1068997356, now seen corresponding path program 7 times [2022-04-28 05:56:58,522 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:58,522 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1964428397] [2022-04-28 05:56:58,522 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:58,522 INFO L85 PathProgramCache]: Analyzing trace with hash 1068997356, now seen corresponding path program 8 times [2022-04-28 05:56:58,522 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:58,523 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [86316278] [2022-04-28 05:56:58,523 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:58,523 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:58,537 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:58,537 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1982327211] [2022-04-28 05:56:58,537 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:56:58,537 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:58,537 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:58,538 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-28 05:56:58,571 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-28 05:56:58,619 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:56:58,619 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:58,621 INFO L263 TraceCheckSpWp]: Trace formula consists of 317 conjuncts, 55 conjunts are in the unsatisfiable core [2022-04-28 05:56:58,634 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:58,635 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:59,713 INFO L272 TraceCheckUtils]: 0: Hoare triple {25088#true} call ULTIMATE.init(); {25088#true} is VALID [2022-04-28 05:56:59,714 INFO L290 TraceCheckUtils]: 1: Hoare triple {25088#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); {25088#true} is VALID [2022-04-28 05:56:59,714 INFO L290 TraceCheckUtils]: 2: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,714 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25088#true} {25088#true} #103#return; {25088#true} is VALID [2022-04-28 05:56:59,714 INFO L272 TraceCheckUtils]: 4: Hoare triple {25088#true} call #t~ret6 := main(); {25088#true} is VALID [2022-04-28 05:56:59,714 INFO L290 TraceCheckUtils]: 5: Hoare triple {25088#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {25088#true} is VALID [2022-04-28 05:56:59,714 INFO L272 TraceCheckUtils]: 6: Hoare triple {25088#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,714 INFO L290 TraceCheckUtils]: 7: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,714 INFO L290 TraceCheckUtils]: 8: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,714 INFO L290 TraceCheckUtils]: 9: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,714 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25088#true} {25088#true} #79#return; {25088#true} is VALID [2022-04-28 05:56:59,714 INFO L290 TraceCheckUtils]: 11: Hoare triple {25088#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L272 TraceCheckUtils]: 12: Hoare triple {25088#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L290 TraceCheckUtils]: 13: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L290 TraceCheckUtils]: 14: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L290 TraceCheckUtils]: 15: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {25088#true} {25088#true} #81#return; {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L272 TraceCheckUtils]: 17: Hoare triple {25088#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L290 TraceCheckUtils]: 18: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L290 TraceCheckUtils]: 19: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L290 TraceCheckUtils]: 20: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {25088#true} {25088#true} #83#return; {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L272 TraceCheckUtils]: 22: Hoare triple {25088#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L290 TraceCheckUtils]: 23: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L290 TraceCheckUtils]: 24: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L290 TraceCheckUtils]: 25: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,715 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {25088#true} {25088#true} #85#return; {25088#true} is VALID [2022-04-28 05:56:59,716 INFO L290 TraceCheckUtils]: 27: Hoare triple {25088#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {25174#(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-28 05:56:59,716 INFO L272 TraceCheckUtils]: 28: Hoare triple {25174#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,716 INFO L290 TraceCheckUtils]: 29: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,716 INFO L290 TraceCheckUtils]: 30: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,716 INFO L290 TraceCheckUtils]: 31: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,717 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {25088#true} {25174#(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))} #87#return; {25174#(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-28 05:56:59,717 INFO L272 TraceCheckUtils]: 33: Hoare triple {25174#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,717 INFO L290 TraceCheckUtils]: 34: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,717 INFO L290 TraceCheckUtils]: 35: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,717 INFO L290 TraceCheckUtils]: 36: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,718 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {25088#true} {25174#(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))} #89#return; {25174#(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-28 05:56:59,718 INFO L290 TraceCheckUtils]: 38: Hoare triple {25174#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25174#(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-28 05:56:59,718 INFO L290 TraceCheckUtils]: 39: Hoare triple {25174#(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);~c~0 := ~a~0;~k~0 := 0; {25211#(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-28 05:56:59,719 INFO L290 TraceCheckUtils]: 40: Hoare triple {25211#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25211#(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-28 05:56:59,719 INFO L272 TraceCheckUtils]: 41: Hoare triple {25211#(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))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,719 INFO L290 TraceCheckUtils]: 42: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,719 INFO L290 TraceCheckUtils]: 43: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,719 INFO L290 TraceCheckUtils]: 44: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,720 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {25088#true} {25211#(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))} #91#return; {25211#(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-28 05:56:59,720 INFO L272 TraceCheckUtils]: 46: Hoare triple {25211#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,720 INFO L290 TraceCheckUtils]: 47: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,720 INFO L290 TraceCheckUtils]: 48: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,720 INFO L290 TraceCheckUtils]: 49: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,721 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {25088#true} {25211#(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))} #93#return; {25211#(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-28 05:56:59,721 INFO L272 TraceCheckUtils]: 51: Hoare triple {25211#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,721 INFO L290 TraceCheckUtils]: 52: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,721 INFO L290 TraceCheckUtils]: 53: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,721 INFO L290 TraceCheckUtils]: 54: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,722 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {25088#true} {25211#(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))} #95#return; {25211#(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-28 05:56:59,722 INFO L272 TraceCheckUtils]: 56: Hoare triple {25211#(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))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,722 INFO L290 TraceCheckUtils]: 57: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,722 INFO L290 TraceCheckUtils]: 58: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,722 INFO L290 TraceCheckUtils]: 59: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,723 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {25088#true} {25211#(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))} #97#return; {25211#(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-28 05:56:59,724 INFO L290 TraceCheckUtils]: 61: Hoare triple {25211#(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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,724 INFO L290 TraceCheckUtils]: 62: Hoare triple {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,724 INFO L272 TraceCheckUtils]: 63: Hoare triple {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,724 INFO L290 TraceCheckUtils]: 64: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,724 INFO L290 TraceCheckUtils]: 65: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,724 INFO L290 TraceCheckUtils]: 66: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,725 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {25088#true} {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,725 INFO L272 TraceCheckUtils]: 68: Hoare triple {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,725 INFO L290 TraceCheckUtils]: 69: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,725 INFO L290 TraceCheckUtils]: 70: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,725 INFO L290 TraceCheckUtils]: 71: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,726 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {25088#true} {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,726 INFO L272 TraceCheckUtils]: 73: Hoare triple {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,726 INFO L290 TraceCheckUtils]: 74: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,726 INFO L290 TraceCheckUtils]: 75: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,726 INFO L290 TraceCheckUtils]: 76: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,727 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {25088#true} {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,727 INFO L272 TraceCheckUtils]: 78: Hoare triple {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,727 INFO L290 TraceCheckUtils]: 79: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,727 INFO L290 TraceCheckUtils]: 80: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,727 INFO L290 TraceCheckUtils]: 81: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,728 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {25088#true} {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,729 INFO L290 TraceCheckUtils]: 83: Hoare triple {25278#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= 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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,729 INFO L290 TraceCheckUtils]: 84: Hoare triple {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,729 INFO L272 TraceCheckUtils]: 85: Hoare triple {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~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)); {25088#true} is VALID [2022-04-28 05:56:59,729 INFO L290 TraceCheckUtils]: 86: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,729 INFO L290 TraceCheckUtils]: 87: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,730 INFO L290 TraceCheckUtils]: 88: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,730 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {25088#true} {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,730 INFO L272 TraceCheckUtils]: 90: Hoare triple {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~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)); {25088#true} is VALID [2022-04-28 05:56:59,730 INFO L290 TraceCheckUtils]: 91: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,730 INFO L290 TraceCheckUtils]: 92: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,730 INFO L290 TraceCheckUtils]: 93: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,731 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {25088#true} {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,731 INFO L272 TraceCheckUtils]: 95: Hoare triple {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~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)); {25088#true} is VALID [2022-04-28 05:56:59,731 INFO L290 TraceCheckUtils]: 96: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,731 INFO L290 TraceCheckUtils]: 97: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,731 INFO L290 TraceCheckUtils]: 98: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,732 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {25088#true} {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,732 INFO L272 TraceCheckUtils]: 100: Hoare triple {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,732 INFO L290 TraceCheckUtils]: 101: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,732 INFO L290 TraceCheckUtils]: 102: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,732 INFO L290 TraceCheckUtils]: 103: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,733 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {25088#true} {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,734 INFO L290 TraceCheckUtils]: 105: Hoare triple {25345#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {25412#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,734 INFO L290 TraceCheckUtils]: 106: Hoare triple {25412#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25412#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,734 INFO L272 TraceCheckUtils]: 107: Hoare triple {25412#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,735 INFO L290 TraceCheckUtils]: 108: Hoare triple {25088#true} ~cond := #in~cond; {25422#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:59,735 INFO L290 TraceCheckUtils]: 109: Hoare triple {25422#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {25426#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:59,735 INFO L290 TraceCheckUtils]: 110: Hoare triple {25426#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25426#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:59,736 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {25426#(not (= |__VERIFIER_assert_#in~cond| 0))} {25412#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {25412#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,736 INFO L272 TraceCheckUtils]: 112: Hoare triple {25412#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,736 INFO L290 TraceCheckUtils]: 113: Hoare triple {25088#true} ~cond := #in~cond; {25422#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:59,736 INFO L290 TraceCheckUtils]: 114: Hoare triple {25422#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {25426#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:59,737 INFO L290 TraceCheckUtils]: 115: Hoare triple {25426#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25426#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:59,738 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {25426#(not (= |__VERIFIER_assert_#in~cond| 0))} {25412#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) (+ main_~c~0 main_~b~0)) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~k~0 (- 3)) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {25448#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,738 INFO L272 TraceCheckUtils]: 117: Hoare triple {25448#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,738 INFO L290 TraceCheckUtils]: 118: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,738 INFO L290 TraceCheckUtils]: 119: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,738 INFO L290 TraceCheckUtils]: 120: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,739 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {25088#true} {25448#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #95#return; {25448#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,739 INFO L272 TraceCheckUtils]: 122: Hoare triple {25448#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25088#true} is VALID [2022-04-28 05:56:59,739 INFO L290 TraceCheckUtils]: 123: Hoare triple {25088#true} ~cond := #in~cond; {25088#true} is VALID [2022-04-28 05:56:59,739 INFO L290 TraceCheckUtils]: 124: Hoare triple {25088#true} assume !(0 == ~cond); {25088#true} is VALID [2022-04-28 05:56:59,739 INFO L290 TraceCheckUtils]: 125: Hoare triple {25088#true} assume true; {25088#true} is VALID [2022-04-28 05:56:59,740 INFO L284 TraceCheckUtils]: 126: Hoare quadruple {25088#true} {25448#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #97#return; {25448#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,740 INFO L290 TraceCheckUtils]: 127: Hoare triple {25448#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {25482#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~y~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (not (<= main_~y~0 main_~c~0)) (<= 0 main_~c~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:59,741 INFO L290 TraceCheckUtils]: 128: Hoare triple {25482#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~y~0 3)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~s~0 1) (= main_~k~0 3) (not (<= main_~y~0 main_~c~0)) (<= 0 main_~c~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; {25486#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (not (<= main_~y~0 main_~b~0)) (= (+ main_~s~0 3) 0) (<= 0 main_~b~0) (= main_~q~0 1))} is VALID [2022-04-28 05:56:59,741 INFO L290 TraceCheckUtils]: 129: Hoare triple {25486#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (not (<= main_~y~0 main_~b~0)) (= (+ main_~s~0 3) 0) (<= 0 main_~b~0) (= main_~q~0 1))} assume !false; {25486#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (not (<= main_~y~0 main_~b~0)) (= (+ main_~s~0 3) 0) (<= 0 main_~b~0) (= main_~q~0 1))} is VALID [2022-04-28 05:56:59,742 INFO L290 TraceCheckUtils]: 130: Hoare triple {25486#(and (= main_~x~0 (+ main_~b~0 (* main_~y~0 3))) (not (<= main_~y~0 main_~b~0)) (= (+ main_~s~0 3) 0) (<= 0 main_~b~0) (= main_~q~0 1))} assume !(0 != ~b~0); {25493#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~s~0 3) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:56:59,742 INFO L272 TraceCheckUtils]: 131: Hoare triple {25493#(and (= (+ main_~x~0 (* main_~y~0 (- 3))) 0) (< main_~x~0 (* main_~y~0 4)) (= (+ main_~s~0 3) 0) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {25497#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:56:59,742 INFO L290 TraceCheckUtils]: 132: Hoare triple {25497#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25501#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:59,743 INFO L290 TraceCheckUtils]: 133: Hoare triple {25501#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {25089#false} is VALID [2022-04-28 05:56:59,743 INFO L290 TraceCheckUtils]: 134: Hoare triple {25089#false} assume !false; {25089#false} is VALID [2022-04-28 05:56:59,743 INFO L134 CoverageAnalysis]: Checked inductivity of 610 backedges. 102 proven. 52 refuted. 0 times theorem prover too weak. 456 trivial. 0 not checked. [2022-04-28 05:56:59,743 INFO L328 TraceCheckSpWp]: Computing backward predicates...